我在vim编辑器中有带有^M
字符的文件。要根据该帖子删除该字符,我正在使用:%s/\r/\r/g
:https://stackoverflow.com/a/12614243/9759150(问题:如何在vim中打开的文件中将^ M换行符转换为“普通”换行符?),就可以了!
但是,逐个文件地处理文件是一件繁琐的工作,因此我想使用一个命令,因此我想到了sed
命令。
我尝试了以下方法:
sed -i '%s/\r/\r/g' *
但是我得到了sed: -e expression #1, char 1: unknown command:
%'`
然后,我尝试了以下方法:
sed -i 's/\r/\r/g' *
并没有任何错误,但是当我用vim打开文件时,我看到了^M
个字符。
编辑示例:
“可能重复的问题”(Remove carriage return in Unix)的相关帖子删除了\r
,但我需要保留它。我唯一需要更改的是^M
一个的\r
字符。
当我打开vim并使用:%s/\r/\r/g
时,结果是所需的:
但是使用sed -i 's/\r/\r/g' *
命令没有效果,并且结果类似于第一张图像。
使用https://stackoverflow.com/a/41461947/9759150中的sed -i 's/\r//g' *
,结果为:
可以看出它确实删除了^M
字符,但是我无法获得与vim中相同的结果。