非常简单,我有一个文件,在每个断行处都有\r\n。
aaaa\r\nbbbb\r\ncccc
我想在保留 \n 的情况下删除 \r 字符。
在Python中可以很容易地实现这一点,但使用简单的sed命令似乎更加优雅。这可能吗?哪个表达式可以解决这个问题?我在网上找不到任何这样的解决方案。
谢谢。
sed
命令来完成它:sed 's/\r//g' orig.txt > modified.txt
sed 's/\r$//'
。 - glenn jackman补充之前的回答,如果你想修改文件而不是创建一个新的:
sed -i 's/\r$//' file.txt
如果您想存储一个备份文件,比如说扩展名为.bak:
sed -i.bak 's/\r$//' file.txt
这会修改file.txt文件并创建一个名为file.txt.bak的备份文件。
如果您在Mac上使用终端,请改用以下命令,以便能够识别\r
sed "s/$(printf '\r')\$//" orig.txt > modified.txt
dos2unix
工具的作用。但使用sed
,它会完全符合您的期望。sed -e 's/\r//' file
。 - Etan Reisner