powershell写入文件会导致无限循环

时间:2017-02-24 18:19:33

标签: powershell

所以我试图做一些简单的文本操作。我发现只使用下面的代码写一个不同名称的文件就可以了:

PS C:\Users\uzfm> Get-Content .\pathSystem.txt | %{$_ -replace ";","`r`n"} > .\pathSystem1.txt

但如果我试图像这样覆盖原始文件:

PS C:\Users\uzfm> Get-Content .\pathSystem.txt | %{$_ -replace ";","`r`n"} > .\pathSystem.txt

该命令陷入无限循环,我只是试图在尝试覆盖文件时理解这个功能的根本原因。

如果有一种方法可行,也会受到赞赏。

1 个答案:

答案 0 :(得分:0)

尝试添加parenthèses,执行read all和ends可以写入同一个文件,就像这样

(Get-Content .\pathSystem.txt | %{$_ -replace ";","`r`n"}) > .\pathSystem.txt

或者像这样:

(Get-Content .\pathSystem.txt) -replace ";","`r`n" > .\pathSystem.txt