【发布时间】:2016-03-17 13:38:47
【问题描述】:
我的脚本不工作:
$files = Get-ChildItem "C:\test\"
for ($i=0; $i -lt $files.Count; $i++) {
$outfile = $files[$i].FullName + "out"
Get-Content $files[$i].FullName | ? {$_.Trim() -ne "" } | Set-Content $files[$i].FullName
}
错误是:
Set-Content : 进程无法访问文件 'C:\test\ADMINISTRATOR.txt'
因为它正在被使用
在 D:\skriptablank.ps1:4 char:63
+ 获取内容 $files[$i].FullName | ? {$_.Trim() -ne "" } |设置内容 $files ...
+~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Set-Content], IOException
+ FullyQualifiedErrorId : System.IO.IOException,Microsoft.PowerShell.Commands.SetContentCommand
你怎么看,我哪里做错了?
【问题讨论】:
-
你的脚本应该没问题,就像错误指出文件被另一个进程锁定一样。你可能在记事本中打开了 txt 文件吗?
-
您要替换文件还是要将其存储为 filename.extension.out?
-
不,我只是在使用 chrome.. 我假设,虽然程序在一个 txt 文件中,但它试图打开另一个文件,然后出现错误..也许我错了。 .
-
@jisaak 我想替换文件..
标签: powershell