如果file1.txt
以 ANSI 编码,则运行此命令:
powershell -Command "(gc file1.txt) -replace 'foo', 'bar' | Out-File file2.txt"
然后file2.txt
总是在 UCS-2 LE BOM 中编码。
为什么,以及如何将输出指定为 ANSI 编码?
如果file1.txt
以 ANSI 编码,则运行此命令:
powershell -Command "(gc file1.txt) -replace 'foo', 'bar' | Out-File file2.txt"
然后file2.txt
总是在 UCS-2 LE BOM 中编码。
为什么,以及如何将输出指定为 ANSI 编码?
您也可以继续使用Set-Content
. 这似乎将编码保留在文件中,因此您不必担心什么编码可能是正确的。
powershell -Command "(gc file1.txt) -replace 'foo', 'bar' | Set-Content file2.txt"
用于-enconding Ascii
确保输出文件为 ASCII。
命令将是:
powershell -Command "(gc file1.txt) -replace 'foo', 'bar' | Out-File -Encoding Ascii file2.txt"