Vi/Vim 是我们在 Linux 中编辑文件非常常用的一个文本编辑器,有的时候我们在编辑文本文件时需要用到字符串替换功能,例如当前行替换以及全局替换等。在 Vim 中可以使用 :s 命令来替换字符串,方法还是非常简单的,本文做一个记录,省得每次用到了都要重新搜索。
一、关于 Vim 编辑器
一般 Linux 系统都会内置 Vim 或者 Vi,新建文件或者编辑文件都很方便,关于 Vim 和 Vi 的介绍、区别、基本使用教程可以参考这篇文章:《Linux下使用vim编辑以及新建文件》
二、Vim 中的替换
Vim :s 命令是 Vim 编辑器中的替换命令,基本形式如下,这个命令会用 new 替换当前行的第一个 old 字符:
:s/old/new
如果我们想替换当前行的所有 old 字符串,则可以加入 g (global,全局),如下:
:s/old/new/g
如果替换指定行?
可以在 :s 命令前指定行数:
# 替换 50-100 行 :50,100s/old/g # 替换第 n 行开始到最后一行 :n,$s/old/new/g
如果全局替换?
用 % 代替指定的行数即可:
:%s/old/new/g