我正在寻找一种方法来替换文件中所有出现的字符串A和B.
我尝试使用GnuWin32 sed实用程序,但结果文件已被修剪。可能是因为该文件包含非unicode字符。只有在命令之前添加LC_ALL = C后,相同的命令才能在Mac上使用相同的文件。 我可以使用哪些其他工具以及如何使用?我可以将一些标志传递给可以使用非unicode字符的GnuWin32 sed吗?
答案 0 :(得分:1)
在PowerShell中,这样的事情应该有效:
$f = 'C:\path\to\your.txt'
(Get-Content $f) -replace 'A','B' | Out-File $f
答案 1 :(得分:1)
另一种选择是使用变量语法:
${C:\path\to\your.txt} -replace 'A','B' | Out-File C:\path\to\your.txt
答案 2 :(得分:1)
如果没有看到文件编码,就无法判断这是否可行,但这会使用名为repl.bat
的辅助批处理文件 - http://www.dostips.com/forum/viewtopic.php?f=3&t=3855
type "file.txt" |repl "A" "B" >"newfile.txt"