Powershell打开文件、编辑文件、更新文件-文档锁定问题
我有一个文本文件,其中包含多个超过x个字符的文件列表。我要做的是打开每个文件,扫描文件的每一行,如果文件长度超过x个字符,我会将该行移到下一行,这样文件就不会超过x个字符。那件作品很棒。我遇到的问题是更新我试图更改/编辑的文本文件。我怀疑锁是powershell脚本,因为该脚本正在读取文件。有人知道我可以做什么来更新原始文本文件或移除锁吗?谢谢你的帮助!我的代码如下:Powershell打开文件、编辑文件、更新文件-文档锁定问题,powershell,Powershell,我有一个文本文件,其中包含多个超过x个字符的文件列表。我要做的是打开每个文件,扫描文件的每一行,如果文件长度超过x个字符,我会将该行移到下一行,这样文件就不会超过x个字符。那件作品很棒。我遇到的问题是更新我试图更改/编辑的文本文件。我怀疑锁是powershell脚本,因为该脚本正在读取文件。有人知道我可以做什么来更新原始文本文件或移除锁吗?谢谢你的帮助!我的代码如下: [int] $limit = 131 $path = get-content C:\document\fix.txt forea
[int] $limit = 131
$path = get-content C:\document\fix.txt
foreach ($f in $path)
{
Get-Content -path $f |
ForEach-Object {
$line = $_
for ($i = 0; $i -lt $line.Length; $i += $limit)
{
$length = [Math]::Min($limit, $line.Length - $i)
$line.SubString($i, $length)
}
} |
Set-Content $f
}
我知道了!我必须把()放在周围以获取内容。基本上是指在进入下一步之前完成你正在做的事情 [int]$limit=131 $path=获取内容C:\Soarian\fix.txt foreach($path中的f) { (获取内容-路径$f)| ForEach对象{ $line=$_
for ($i = 0; $i -lt $line.Length; $i += $limit)
{
$length = [Math]::Min($limit, $line.Length - $i)
$line.SubString($i, $length)
}
} |
Set-Content $f -Force
}作为参考,(…)
称为分组运算符-官方文档如下: