【发布时间】:2017-06-19 09:33:30
【问题描述】:
使用从批处理文件调用的 Powershell v2,我想用一个 LF 替换文件中的每个 CRLF。如果一个文件只有 LF 而没有任何 CR,那么我希望所有的 LF 都被单独留下。
如果可能的话,我不想在结果文件中使用终止的 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。
我怎样才能让它工作?
【问题讨论】:
标签: powershell batch-file windows-7 newline powershell-2.0