Shell命令从文本文件中去除^ M个字符

可能重复:
在Unix中删除回车

我正在阅读由外部第三方生成的一些数据。 我注意到文件中的ASCII文本中散布着^ M个字符,我相信这是ASCII字符13,并且表示一个没有换行的回车。

有没有可用于从文件中去除^ M个字符的单线?

我在Linux(Ubuntu)上运行。

你可以像这样使用sed:

sed -i.bak 's/^M$//' infile.txt 

要输入^M ,你需要输入CTRL-V然后CTRL-M

要么

  dos2unix infile.txt file2.txt .... 

要么

 man dos2unix 

更多细节。

IHTH