Unix 如何在vi编辑器中删除每行中间的^ m字符

Unix 如何在vi编辑器中删除每行中间的^ m字符,unix,replace,vi,Unix,Replace,Vi,我试图删除文件中每行中间的控制字符。下面是我的数据。我使用了下面的命令,但它似乎不起作用 Command: :%s/^M//g Data: 53,v42,p11,51097,310780,ok^M,fraud 56,v45,p11,260,1925,ok^M,fraud 68,v42,p11,51282,278770,ok^M,fraud 96,v49,p14,212,1545,ok^M,fraud 163,v50,p20,373819,1006375,ok^M,fraud 204,v50,p

我试图删除文件中每行中间的控制字符。下面是我的数据。我使用了下面的命令,但它似乎不起作用

Command:
:%s/^M//g

Data:
53,v42,p11,51097,310780,ok^M,fraud
56,v45,p11,260,1925,ok^M,fraud
68,v42,p11,51282,278770,ok^M,fraud
96,v49,p14,212,1545,ok^M,fraud
163,v50,p20,373819,1006375,ok^M,fraud
204,v50,p26,36917,117195,ok^M,fraud
241,v70,p33,21777,91360,ok^M,fraud

Output Warning:
E486: Pattern not found: ^M

请看这篇文章:


基本的推理是键入^M搜索文字解释,两个字符是^M,而您希望从输入中构造实际的控制字符。

看看这篇文章:


基本的推理是,键入^M搜索文字解释,两个字符是^M,而您希望从输入中构造实际的控制字符。

是的,您先按住“Ctrl”键和“v”键,然后按住“Ctrl”键和“M”键,而不是按字面意思键入“^v”和“^M”

是的,你可以按住Ctrl键和v键,然后按住Ctrl键和m键,而不是字面上的“^v”和“^m”

如何使用VI编辑器从unix文件中删除^M 使用此命令

:%sCtrl+VCtrl+M/


重要!!–按Ctrl-v Ctrl-m组合键输入^m字符,不要使用“^”和m。

如何使用VI编辑器从unix文件中删除^m 使用此命令

:%sCtrl+VCtrl+M/


重要!!–按Ctrl-v Ctrl-m组合键输入^m字符,不要使用“^”和m。

Doh!就在我正要按Send的时候:-但无论如何,回答得很好!我仍然没有得到你的答案。而且我以前也访问过该链接,并尝试使用相同的命令,但不起作用。你是键入^M还是按住control键,点击v键,按住control键点击M键?我过去从来没有这样做过。什么操作系统?你使用的是PuTTY这样的终端程序吗?如果我在键盘上键入^M,它会显示模式^M未找到,如果我说Ctrl+M,它会立即消失。如果你说Ctrl+V,然后是Ctrl+M,会显示什么?Doh!就在我正要按Send的时候:-但无论如何,回答得很好!我仍然没有得到你的答案。而且我以前也访问过该链接,并尝试使用相同的命令,但不起作用。你是键入^M还是按住control键,点击v键,按住control键点击M键?我过去从来没有这样做过。什么操作系统?你使用的是PuTTY这样的终端程序吗?如果我在键盘上键入^M,它会说找不到模式^M,如果我说Ctrl+M,它会立即消失。如果你说Ctrl+V,然后是Ctrl+M,会出现什么?嗯。。问题或答案?不是:%sCtrl+VCtrl+M/。您缺少起始/和尾随/g。你的意思是:%s/Ctrl+VCtrl+M//g.hmm。。问题或答案?不是:%sCtrl+VCtrl+M/。您缺少起始/和尾随/g。你的意思是:%s/Ctrl+VCtrl+M//g。
To remove the ^M characters at the end of all lines in vi, use:

:%s/^V^M//g

The ^v is a CONTROL-V character and ^m is a CONTROL-M. When you type this, it will look like this:

:%s/^M//g