在Linux下使用vi来查看一些在Windows下创建的文本文件,有时会发现在行尾有一些“^M”。有几种方法可以处理。
1.使用dos2unix命令。一般的分发版本中都带有这个小工具(如果没有可以根据下面的连接去下载),使用起来很方便:
$ dos2unix myfile.txt
上面的命令会去掉行尾的^M。
2.使用vi的替换功能。启动vi,进入命令模式,输入以下命令:
:%s/^M$//g # 去掉行尾的^M。
:%s/^M//g # 去掉所有的^M。
:%s/^M/[ctrl-v]+[enter]/g # 将^M替换成回车。
:%s/^M/\r/g # 将^M替换成回车。
3.使用sed命令。和vi的用法相似:
$ sed -e ‘s/^M/\n/g’ myfile.txt
注意:这里的“^M”要使用“CTRL-V CTRL-M”生成,而不是直接键入“^M”。
转自:http://hi.baidu.com/mofeis/blog/item/23c7b2fb92dc97234e4aea6d.html
试过以下两种是可行的,其他估计也可行,特意记录一下备用:
:%s/^M/[ctrl-v]+[enter]/g # 将^M替换成回车。
:%s/^M/\r/g # 将^M替换成回车。
一定要注意“^M”要使用“CTRL-V CTRL-M”生成,而不是直接键入“^M”
相关推荐
- **处理^M字符**: - 文中提到的`^M`字符通常表示的是Windows系统的换行符`CR`(回车),而在Linux系统中通常使用`LF`(换行)作为换行符。因此,在跨平台复制粘贴文本时可能会出现`^M`字符残留问题。 - 要删除...
LINUX vim替换字符串指令 本文档主要介绍了在 LINUX 环境下使用 vim 编辑器时,如何使用 `s` 命令来替换字符串。本文档共四页,涵盖了多种使用 `s` 命令的方式,包括基本用法、使用分隔符、删除文本中的换行符等...
在Linux系统中,有时我们可能会遇到文件中含有^M字符,这些字符通常是由于文件在Windows环境中创建或编辑,然后在Linux环境下打开时产生的。^M字符实际上代表了一个回车(CR,Carriage Return)符号,这在Windows...
当Windows文件被拷贝到Linux系统中时,由于换行符的不同(Windows使用CR+LF,Linux使用LF),可能会出现^M字符。以下是一些删除^M的方法: - `cat filename1 | tr -d “^V^M” > newfile` - `sed -e "s/^V^M//" ...
在VIM中,替换操作通常使用:s命令完成,该命令的格式为:%s/原字符串/新字符串/标志。其中,“%”表示在整个文件范围内执行替换,“s”表示替换操作。 2. 替换操作的标志位: - “g”标志表示全局替换,即在一行内...
为了更好地理解和处理这些特殊字符,本文将详细介绍如何在Vim中查看、输入以及替换这些特殊字符。 #### 二、查看特殊字符 在Vim中,某些特殊字符可以直接显示出来,而其他不可见的特殊字符则会以一种特定的命令行...
vim正则表达式中包含一系列特殊的元字符,它们具有特定的含义,用于构建复杂的搜索和替换模式。以下是一些基本的元字符及其作用: - `#`:通常用于注释,在vim正则表达式中,它并没有特殊含义。 - `.`:匹配任何...
- `r` / `R`:替换光标下的字符或从光标处开始替换字符。 - `g` + `r`:替换光标下的字符但不影响布局。 - `c` + `m`:改变移动命令m所选中的文本。 - `c` / `S`:改变当前行的文本。 - `C`:改变到行尾的文本。 - `...
- **:m,n/s/oldtext/newtext**: 在指定范围`m`行到`n`行之间替换`oldtext`为`newtext`。 - **:g/text/s/text1/text2**: 在所有包含`text`的行中,将`text1`替换为`text2`。 - **:g/text/command**: 在所有包含`text`...
- `R`:进入替换模式,连续替换光标下的字符直到按下`Esc`键退出。 5. **其他** - `u`:撤销上一个操作。 - `ctrl + r`:重做上一个操作。 - `.`:重复上一个改变命令。 #### 五、搜索与替换 1. **搜索** - `/...
/t.e 中间替换任何一个字符搜索关键词 * 移动关键词按*,会自动高亮,再按n就可查找此关键词 操作符命令: x 删除当前光标下的字符,相当于dl,d 和 l的组合使用 X 删除当前光标前一个字符,相当于dh u 恢复上...
Vim是一款广泛使用的文本编辑器,其功能丰富,学习曲线相对较陡峭,但一旦...请注意,由于文档扫描存在技术限制,一些特殊字符(如^A, ^@等)可能与实际Vim操作中的命令有所差异,需根据Vim的实际操作习惯进行调整。
- `M`: 光标移动到屏幕中间的第一行。 - `L`: 光标移动到屏幕底部的第一行。 - `G`: 光标移动到文件的最后一行。 - `nG`: 光标移动到文件的第n行。 3. **撤销与重做**: - `u`: 撤销最近一次的操作(undo)。 ...
- **:ranges/pat1/pat2/g/:m,ns/oldtext/newtext/:&/:g/text1/s/text2/text3/:g/text/command/:v/text/command**: 分别用于替换文本/在m行到n行间替换文本/重复上一个替换命令/查找包含text1的行,用text3替换text2/...
- **替换单个字符**:使用`r`加上字符可以直接替换当前光标下的字符,无需进入编辑模式。 #### 四、光标移动技巧 VIM提供了一套完整的光标移动方法,包括但不限于: - **单个字符的移动**:`h`、`j`、`k`、`l`分别...
- **插入与替换**:`i`和`I`分别用于在当前字符前或行首开始插入模式,而`r`和`R`则用于替换模式下修改字符或连续替换。 - **复制与粘贴**:`yy`复制当前行,`dd`删除当前行,`p`和`P`分别在当前行下方和上方粘贴...
4. 替换文本:在普通模式下,输入r然后跟随一个字符,将光标下的字符替换为该字符;R键进入替换模式。 5. 撤销与重做:使用u键撤销上一步操作,使用ctrl-r键重做。 ### 快捷键 1. 查找:普通模式下使用/键开始查找...
本文将从VIM的基本移动、插入与替换、删除、复制以及高级插入等几个方面进行详细解析,帮助用户更熟练地掌握VIM的使用技巧。 #### 基本移动操作 - `h`、`l`、`k`、`j`:分别代表左移、右移、上移、下移一个字符或...