UNIX/Linux:vi/vim执行搜索和替换操作
时间:2020-01-09 10:44:05 来源:igfitidea点击:
问题描述:我刚刚安装了CentOS Linux服务器,并开始使用vi文本编辑器对配置文件进行更改。
如何使用vi/vim文本编辑器执行搜索和替换操作?
答:vi(vim)并不难学,vi编辑器是众所周知的,可用于编写代码和编辑配置文件。
VI搜索和替换命令格式
简单格式如下:%s/old-string/new-string /
VI搜索和替换命令示例
假设您要查找一个名为foo的单词并替换为bar。
首次按下[Esc]
键
输入:
(冒号),然后输入%s/foo/bar /
,然后按[Enter]键。
:%s/foo/bar/
上面的命令将在所有行上用bar替换单词foo的首次出现。
%是所有行的简写。
要用所有行上的bar代替foo单词的所有出现,请使用g选项(指示一行上的所有出现)。
:%s/foo/bar/g
请注意,可以用数字1,2,N替换g,以仅更改每行的第n个出现次数。
使用查找和替换行范围(按行号匹配)
您还可以在行的范围内进行更改,即仅在第5到20行上用bar替换首次出现的foo,然后执行:
:5,20s/foo/bar/
以下命令将从当前行开始的bar替换首次出现的foo,用于接下来的100行:
:.,+100s/foo/bar/
文字匹配
最后,您可以按单词匹配,即从包含单词test的下一行开始用bar替换首次出现的foo:
:/test/s/foo/bar/g
与往常一样,您可以指定范围:
:/test/,/guest/s/foo/bar/g
请注意,所有搜索/替换命令均应仅以[[ESC]:]击键组合开头。