0

尝试匹配一堆 CSV 文件中的字符串,然后将带有该字符串的文件移动到另一个文件夹。脚本逻辑似乎有效,但我不断收到文件正在使用的错误。我想是powershell锁定了文件。我该如何解决这个问题?

$DestDir = "C:\temp\NEWCSV"
$SrcDir = "C:\temp\CSV"
$SearchString = "teststring"
gci $SrcDir -filter *.csv | select-string $SearchString | select path | move-item -dest $DestDir -whatif
4

1 回答 1

0

我不确定为什么您的脚本不起作用,除非 Select-String 将文件保持打开状态,因为它是通过管道传递的对象。如果您这样改写它,它将起作用:

$DestDir = "C:\temp\NEWCSV"
$SrcDir = "C:\temp\CSV"
$SearchString = "TITLE"
gci $SrcDir -filter *.csv | ?{select-string $SearchString $_ -quiet}|move-item -Destination $DestDir
于 2014-04-08T16:40:12.783 回答