我在 Windows 中使用 Powershell 将 Unix 生成的文件中的 '£' 替换为 '$'。问题是输出文件在每一行的末尾都有 CRLF,而不是原来的 LF。当我在 Notepad++ 中查看原始文件时,状态栏告诉我它是 Unix ANSI,我想保持这种格式并在每行末尾添加 LF。我尝试了所有编码选项都没有成功,我也尝试过 Set-Content 而不是 od Out-File。我的代码是:
$old = '£'
$new = '$'
$encoding = 'UTF8'
(Get-Content $fileInfo.FullName) | % {$_ -replace $old, $new} | Out-File -filepath $fileInfo.FullName -Encoding $encoding
感谢您的帮助杰米