Powershell打开文件、编辑文件、更新文件-文档锁定问题

Powershell打开文件、编辑文件、更新文件-文档锁定问题,powershell,Powershell,我有一个文本文件,其中包含多个超过x个字符的文件列表。我要做的是打开每个文件,扫描文件的每一行,如果文件长度超过x个字符,我会将该行移到下一行,这样文件就不会超过x个字符。那件作品很棒。我遇到的问题是更新我试图更改/编辑的文本文件。我怀疑锁是powershell脚本,因为该脚本正在读取文件。有人知道我可以做什么来更新原始文本文件或移除锁吗?谢谢你的帮助!我的代码如下: [int] $limit = 131 $path = get-content C:\document\fix.txt forea

我有一个文本文件,其中包含多个超过x个字符的文件列表。我要做的是打开每个文件,扫描文件的每一行,如果文件长度超过x个字符,我会将该行移到下一行,这样文件就不会超过x个字符。那件作品很棒。我遇到的问题是更新我试图更改/编辑的文本文件。我怀疑锁是powershell脚本,因为该脚本正在读取文件。有人知道我可以做什么来更新原始文本文件或移除锁吗?谢谢你的帮助!我的代码如下:

[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
}

作为参考,
(…)
称为分组运算符-官方文档如下: