`

vim 查找替换

 
阅读更多

 

vi/vim 中可以使用 :s 命令来替换字符串

:s/vivian/sky/ 替换当前行第一个 vivian 为 sky

:s/vivian/sky/g 替换当前行所有 vivian 为 sky

:n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky

:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky

n 为数字,若 n 为 .,表示从当前行开始到最后一行

:%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky

:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky

可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符

:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/

:%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ): /oradata/apras/替换成/user01/apras1/

1.

:s/vivian/sky/ 替换当前行第一个 vivian 为 sky

:s/vivian/sky/g 替换当前行所有 vivian 为 sky

2.

:n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky

:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky

(n 为数字,若 n 为 .,表示从当前行开始到最后一行)

3.

:%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky

:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky

4.

可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符

:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/

5.

删除文本中的^M

问题描述:对于换行,window下用回车换行(0A0D)来表示,Linux下是回车(0A)来表示。这样,将window上的文件拷到Unix上用时,总会有个^M.请写个用在unix下的过滤windows文件的换行符(0D)的shell或c程序。

· 使用命令:cat filename1 | tr -d “^V^M” > newfile;

· 使用命令:sed -e “s/^V^M//” filename > outputfilename。需要注意的是在1、2两种方法中,^V和^M指的是Ctrl+V和Ctrl+M。你必须要手工进行输入,而不是粘贴。

· 在vi中处理:首先使用vi打开文件,然后按ESC键,接着输入命令:%s/^V^M//。

· :%s/^M$//g

如果上述方法无用,则正确的解决办法是:

· tr -d "\r" < src >dest

· tr -d "\015" dest

· strings A>B

6.

其它

利用 :s 命令可以实现字符串的替换。具体的用法包括:

:s/str1/str2/ 用字符串 str2 替换行中首次出现的字符串 str1

:s/str1/str2/g 用字符串 str2 替换行中所有出现的字符串 str1

:.,$ s/str1/str2/g 用字符串 str2 替换正文当前行到末尾所有出现的字符串 str1

:1,$ s/str1/str2/g 用字符串 str2 替换正文中所有出现的字符串 str1

:g/str1/s//str2/g 功能同上

从上述替换命令可以看到:g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索

字符串的首次出现进行替换;g 放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作

分享到:
评论

相关推荐

    vim 全文字符串替换

    ### Vim全文字符串替换 在日常的编程或文本编辑过程中,我们经常会遇到需要对大量文本进行字符串替换的需求。尤其是在处理从Windows系统复制到Linux系统中的文本时,常常会遇到换行符不兼容的问题,例如文中提到的`...

    vim-easygrep, 在多个文件中快速轻松地查找和替换.zip

    vim-easygrep, 在多个文件中快速轻松地查找和替换 easygrep在多个文件中快速轻松地查找和替换EasyGrep是通过多个文件执行搜索和替换操作的插件。 Vim已经经有内置的支持,可以以使用它的'vimgrep'和'grep'命令搜索...

    far.vim:查找并替换Vim插件

    far.vim-查找和替换Vim插件 介绍 Far.vim使得通过多个文件查找和替换文本更加容易。 它受IntelliJ和Eclipse之类的精美IDE的启发,这些IDE为此类任务提供了舒适的工具。 安装 Plug ' brooth/far.vim ' 用法 使用命令...

    Vim中查找替换及正则表达式的使用详解

    Vim中的正则表达式功能很强大,如果能自由运用,则可以完成很多难以...下面这篇文章主要给大家介绍了关于Vim中查找替换及正则表达式使用的相关资料,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。

    学习vi和vim编辑器.pdf_vim实用_vi_vim_

    3. **底行模式**:通过`:`键进入,用于执行保存、查找替换、退出等命令。 **四、基本操作** 1. **打开文件**:`vim 文件名` 命令用于打开一个文件进行编辑。 2. **移动光标**:`h`左移,`j`下移,`k`上移,`l`右移...

    Vim实用技巧.pdf_vim实用_vim_

    5. **查找与替换**:`/`后输入要查找的文本进行查找,`n`和`N`分别用于向后和向前查找下一个匹配项。`:s/old/new/g`替换所有"old"为"new",`:%s/old/new/g`全局替换。 6. **撤销与重做**:`u`撤销上次操作,`Ctrl +...

    Linux中vim安装包

    5. **查找与替换**: `/text`查找text,`?text`反向查找。`:s/text1/text2/g`将所有text1替换为text2。 6. **保存和退出**: `:w`保存,`:q`退出,`:wq`保存并退出,`:q!`不保存强制退出。 **高级特性** 1. **语法...

    linux文本编辑器(vim)1

    Vim 提供了强大的查找替换功能: * `S/查找文本/替换文本/`:简单的查找替换,当前行的替换。 * `%s/查找文本/替换文本/`:区域性替换,例如 `1,10s/查找文本/替换文本/` 表示在第 1 行到第 10 行进行替换。 * `%s/...

    Linux vim工具 模糊查找 FZF插件

    3. **命令行模式**: 在正常模式下,输入冒号`:`进入命令行模式,可以执行如保存、查找替换等操作。 4. **宏录制与播放**: 在正常模式下,使用`qq`开始录制宏,`q`停止,然后用`@q`播放宏。 **二、FZF安装与配置** ...

    vim 常用快捷键笔记

    `g/old/s//new/g` 查找并替换文件中所有的 `old` 为 `new`。 - **撤销与重做**:`u` 撤销上一步操作;`Ctrl + r` 重做上一步操作。 - **查找**:`/pattern` 查找下一个 `pattern`;`?pattern` 查找上一个 `pattern`...

    linux中批量查找替换文本内容例子.docx

    Linux 中批量查找替换文本内容实例 在 Linux 系统中,批量查找和替换文本内容是一个非常常见的操作。下面是Linux中批量查找替换文本内容的一些实例: 1. 使用 grep 命令批量查找文件内容 grep 命令是 Linux 中最...

    ubuntu 20.04.1 离线vim资源包

    - Vim支持命令行模式,用户可以通过输入特定的命令进行文本操作,例如移动光标、复制粘贴、查找替换等。 - Vim的配置文件`~/.vimrc`允许用户自定义快捷键、设置和行为,实现个性化定制。 对于运维人员而言,Vim是...

    vim-plugin插件

    `grep.vim` 插件则整合了 Unix/Linux 系统中的 `grep` 命令,可以在 Vim 内部直接进行搜索,查找代码中的特定模式。这样用户无需离开编辑器就可以定位问题,提高了开发效率。 `a.vim` 文件可能是某个特定插件的组成...

    vim教程 vim tutor

    - **查找和替换:** - 使用 `/pattern` 命令搜索文本中的模式。 - 使用 `:s/pattern/replacement/g` 命令替换文本中的模式。 - 使用 `:1,$s/pattern/replacement/g` 命令全局替换整个文件中的模式。 - **分屏和...

    vim图方便教你如何使用vim

    - 底线命令模式:按`Esc`或`:`进入,用于保存、退出、查找替换等操作。 3. **移动光标** - `h`向左,`j`向下,`k`向上,`l`向右移动。 - `0`移到行首,`$`移到行尾,`G`移到文件末尾,`gg`回到文件开头。 4. **...

    在linux文件中查找并替换

    本文将详细介绍在Linux环境下进行文件查找与替换的方法,包括常用的命令工具如`sed`和`vi`(或`vim`)等,并通过具体示例加以解释。 #### 二、sed 命令 **sed** 是一个强大的流编辑器,用于处理文本文件中的数据流...

    vim_命令手册

    Vim提供了强大的查找和替换功能,让用户能够快速定位文本并进行替换。 - **/text**: 用于在文件中向前查找包含`text`的内容。例如,输入`/search_text`会在文件中查找包含“search_text”的位置。 - **?text**: 在...

    vim小技巧1

    - **末行模式**:在命令模式下输入`:`进入,用于执行保存文件、查找替换等全局操作。 2. **编辑操作** - **进入输入模式**:`i`插入模式,`a`追加模式,`o`在当前行下方插入新行,`c`修改(覆盖)当前字符,`s`...

    vim用户手册和vim使用进阶

    - **查找与替换**: 输入`/`后输入查找内容,回车查找;`:s/旧内容/新内容/g`全局替换。 ## 2. vim进阶技巧 - **块选择与操作**: 在可视模式下,用`v`选中块,然后可以进行复制、删除等操作。 - **宏录制与播放**:...

Global site tag (gtag.js) - Google Analytics