0

我正在寻找一种将文件中所有出现的字符串 A 替换为 B 的方法。

我尝试使用 GnuWin32 sed 实用程序,但结果文件被修剪。这可能是因为文件包含非 Unicode 字符。只有在命令前添加 LC_ALL=C 后,相同的命令才能在 Mac 上使用相同的文件。我可以使用哪些其他工具以及如何使用?我可以将一些标志传递给 GnuWin32 sed 来处理非 unicode 字符吗?

4

3 回答 3

1

另一种选择是使用变量语法:

${C:\path\to\your.txt} -replace 'A','B' | Out-File C:\path\to\your.txt
于 2013-10-07T21:39:10.183 回答
1

在 PowerShell 中,这样的东西应该可以工作:

$f = 'C:\path\to\your.txt'
(Get-Content $f) -replace 'A','B' | Out-File $f
于 2013-10-07T18:10:16.073 回答
1

如果没有看到文件编码,就无法判断这是否会起作用,但这使用了一个名为的帮助批处理文件repl.bat- http://www.dostips.com/forum/viewtopic.php?f=3&t=3855

type "file.txt" |repl "A" "B" >"newfile.txt"
于 2013-10-07T22:58:19.397 回答