Vi编辑器中,如何替换指定的字符串
封面图
•
2025-11-01
•
Linux
221
0
0
0
在 **Vi 编辑器**(或 Vim)中,替换指定字符串的命令如下: --- ### 一、基本语法 ```vim :%s/旧字符串/新字符串/g ``` - `:`:进入命令模式。 - `%`:表示整个文件。 - `s`:是 `substitute`(替换)的缩写。 - `/`:分隔符,也可以用 `@` 或 `#` 等代替。 - `旧字符串`:要被替换的字符串。 - `新字符串`:替换成的字符串。 - `g`:表示全局替换(即替换所有出现的字符串),不加 `g` 只替换每行第一个匹配项。 --- ### 二、示例 假设你有一个文件内容如下: ``` hello world hello everyone ``` #### 1. 替换所有 "hello" 为 "hi" ```vim :%s/hello/hi/g ``` 结果: ``` hi world hi everyone ``` #### 2. 替换每行的第一个 "hello" 为 "hi" ```vim :%s/hello/hi/ ``` #### 3. 只替换某一行(例如第 2 行) ```vim :2s/hello/hi/g ``` #### 4. 替换时忽略大小写(例如替换 "Hello" 和 "HELLO") ```vim :%s/\chello/hi/g ``` - `\c` 表示忽略大小写。 --- ### 三、其他常用选项 | 命令 | 含义 | |------|------| | `:s/pattern/replacement/` | 替换当前行的第一个匹配 | | `:s/pattern/replacement/g` | 替换当前行的所有匹配 | | `:%s/pattern/replacement/g` | 替换整个文件的所有匹配 | | `:n,m s/pattern/replacement/g` | 替换第 n 行到第 m 行的所有匹配 | | `:s/pattern/replacement/i` | 忽略大小写替换(i = ignore case) | --- ### 四、确认替换 如果你不想直接替换,而是想逐个确认替换,可以加上 `c` 选项: ```vim :%s/hello/hi/gc ``` 这会提示你每个匹配项是否替换。 --- 如需进一步帮助,可以在 Vi 中输入: ```vim :help :s ``` 这会打开 Vi 的帮助文档,详细解释 `:s` 命令。
上一篇:
linux下使用命令来查看某一端口是否开放
下一篇:
Redis介绍以及安装(Linux)
标题录入,一次不能超过6条
留言
评论