" 目录:RHCA+ -> 3 Vim -> 15 查找与替换 "

1、替换模式
命令模式下执行
|-------|------------------------------------------------|
| 快捷键 | 作用 |
| r | 替换光标所在位置的字符;替换为随后键盘输入的单个字母 |
| R(大写) | 进入替换模式;从光标所在位置开始替换字符,其输入内容会覆盖掉后面等长的文本内容,按Esc结束 |
2、查找
命令模式下执行
字符串严格区分大小写
查找内容中有特殊符号,需要加上转义字符 "\";常见的特殊符号有 \、*、?、 等。例:查找10,使用/10\$
|--------|-------------------|
| 快捷键 | 作用 |
| /abc | 从光标所在位置向后查找字符串abc |
| /^abc | 查找以abc为行首的行 |
| /abc$ | 查找以abc为行尾的行 |
| ?abc | 从光标所在位置向前查找字符串abc |
| n | 显示搜索命令定位到的下一个字符串 |
| N(大写) | 显示搜索命令定位到的上一个字符串 |
3、查找并替换
末行模式下执行
查找所有行有两种写法;1、1, 2、%
|-------------------|-------------------------------|
| 快捷键 | 作用 |
| :s/aaa/bbb | 将当前光标所在行中的第一个aaa用bbb替换,没有则不替换 |
| :s/aaa/bbb/g | 将当前光标所在行中的所有aaa用bbb替换 |
| :n1,n2s/aaa/bbb/g | 将文件中n1到n2行中所有aaa都用bbb替换 |
| :%s/aaa/bbb/g | 将文件中所有的aaa都用bbb替换 |
1,20s/a/b/g 将第1行到第20行中,所有的a都替换成b

看到前20行都的a都替换成了b
