通常是为了从我们所做的文件中删除 ^M
dos2unix test.txt test.txt
tr -d '\r' < old.file > new.file
Run Code Online (Sandbox Code Playgroud)
但这种方法坚持创建新文件
如果我们不想创建另一个文件,那么解决方案是:perl one liner 的示例
perl -pi -e 's/^M//g' file1
Run Code Online (Sandbox Code Playgroud)
我在 Solaris 上尝试过,但由于不清楚的原因,文件中仍然存在 ^M 吗?
请建议这里有什么问题
Perl 也需要一个\r。
perl -pi -e 's/^M//g' file1
^^ - should be \r
Run Code Online (Sandbox Code Playgroud)
尽管实际上,您可能只想坚持使用行尾。
perl -pi -e 's,\r\n,\n,g' file1
Run Code Online (Sandbox Code Playgroud)
虽然实际上 - 你不需要为此使用 perl。sed完全有能力:
sed -i.bak -e 's,\r\n$,\n,g' file1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3408 次 |
| 最近记录: |