我有一个脚本,它基本上记录了远程共享上的每个文件和文件夹,并将其转储到csv。每件事都运行得很好(除了最后一部分,脚本本身还有很多工作要做)。
Import-Csv -Path ($savelocation + '\' + $filename) -Delimiter ',' | ForEach-Object {
if ($audioarray -contains $_.Extension) {
$_.MediaType = 'Audio'
$_
} elseif ($videoarray -contains $_.Extension) {
$_.MediaType = 'Video'
$_
} elseif ($otherarray -contains $_.Extension) {
$_.MediaType = 'Other'
$_
} else {
$_
}
} | Export-Csv -Path ($savelocation + '\' + $filename) -Force -Delimiter ',' -NoTypeInformation如果我将路径更改为一个静态位置,比如\\servername\share\testfolder,它就能正常工作。但是,如果我使用上面的代码,或者即使我将($savelocation + '\' + $filename)加入到像$filename这样的东西中,它仍然只会写一个空文件。
发布于 2012-05-26 03:31:09
很抱歉,它对任何路径都不起作用。原因很简单-您可以读/写相同的文件。如果你读入变量,并处理内存中的数据,它将会工作。
将路径(元素)存储在变量中的IMO与此无关。顺便说一句:你可以用Join-Path cmdlet连接路径...:)
发布于 2018-02-08 23:22:29
如果您将路径放在一个可验证的
$path = $savelocation + '\' + $filename
Export-Csv -Path $path -Force -Delimiter ',' -NoTypeInformationhttps://stackoverflow.com/questions/10758013
复制相似问题