使用从批处理文件调用的Powershell v2,我想用LF替换文件中的每个CRLF。如果一个文件只有LF而没有任何CR,那么我希望所有的LF都保持独立。Powershell v2:用LF替换CRLF
如果可能,我不想在结果文件中终止CRLF。
我发现this question here on Stack Overflow,这似乎很接近,但它没有指定Powershell版本的要求,也没有指定上述其他标准。因此,这个问题。
对于这个问题接受的答案建议使用此代码:
$in = "C:\Users\abc\Desktop\File\abc.txt"
$out = "C:\Users\abc\Desktop\File\abc-out.txt"
(Get-Content $in) -join "`n" > $out
我稍微修改了它,并调整它从一个批处理文件中工作,将其改为:
powershell -Command "(Get-Content file1.txt) -join '`n' > file2.txt"
不幸的是,这不起作用。所有的LF都被转换为字符串`n
。
我该如何得到这个工作?
谢谢!伟大的信息!为什么要添加前导符号,将该命令放在花括号中,并添加终止分号? – RockPaperLizard
嗯......我得到以下错误:**您必须在'-join'操作符的右侧提供值表达式** – RockPaperLizard
对不起。我用''''''''''''''''''''''''转义了双引号。我现在已经正确地测试了所有示例。 – tukan