1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| /text #在文件中向前查找 text ?text #在文件中向后查找 text n #在同一方向重复查找 N #在相反方向重复查找 f<字符> #行内向后搜索<字符>并跳转到第一个匹配的位置(非常实用) F<字符> #在当前行向后查找<字符>并跳转到第一个匹配的位置(非常实用)
:g/text1/s/text2/text3 #查找包含 text1 的行,用 text3 替换 text2 :g/text/command #在所有包含 text 的行运行 command 所表示的命令 :v/text/command #在所有不包含 text 的行运行 command 所表示的命令
:%s/old/new/g #将所有出现的old替换为new :%s/onward/forward/gi #将所有onward替换为forward,大小写不敏感 :%s/old/new/gc #替换前确认 :2,35s/old/new/g #将第2行到第35行之间的old替换为new :5,$s/old/new/g #将第5行到文件结尾的old替换为new :%s/^/hello/g #在每一行开头加入hello :%s/$/Harry/g #在每一行结尾加入Harry :%s/ *$//g #删除每行末尾无用空格
:g/string/d #删除所有包含string的行 :v/string/d #删除所有不包含string的行 :s/Bill/Steve/ #替换当前行第一个Bill为Steve :s/Bill/Steve/g #替换当前行中所有Bill :%s/Bill/Steve/g #替换文件中所有Bill :%s/^M//g #删掉DOS保存文件中(^M) :%s/\r/\r/g #Transform DOS carriage returns in returns :%s#<[^>]\+>##g #删除html标签但是保留文本 :%s/^\(.*\)\n\1$/\1/ #删除所有连续出现过两次的行,保留一行 Ctrl+a #递增光标下的数字 Ctrl+x #递减光标下的数字 ggVGg? #文本转换为 Rot13
|