Vim

Summary: Author: 张亚飞 | 阅读时间: 1 minute read | Published: 2015-04-26
Filed under Categories: LinuxTags: Note,

简明 Vim 练级攻略


Vim 快捷键

常用快捷键收藏

vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后一行首 vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处 vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename

光标移动指令

  • [ h:左 | l:右 | k:上 | j:下 ]

  • [ 0:行首 | $:行尾 ]

  • [G:文档尾部 | gg: 文档首部]

  • [w: 移至一个word的首部 | e: 移至一个word的字尾]

  • [n+:光标下移n行 | n-:光标上移n行]

  • [nG:光标移至第n行首 | n$:光标移至第n行尾]

  • [H :光标移至屏幕顶行 | M :光标移至屏幕中间行 | L :光标移至屏幕最后行]

  • [x: 删除光标所在的字元 | X: 删除光标之前的字元]

  • [dd 删除整行]

  • [dw: 删除一个word]

  • [dG: 删除至文档尾 | dgg: 删除至档首]

  • [D/d$: 删除至行尾 | d0: 删除至行首 | ndd:删除当前行及其后n-1行]

o 当前行的下边插入新行 O 在当前行的上边插入新行

?text 在文件中向前查找text /text 在文件中向后查找text

: set nu
  • 修改文件格式
: set ff
: set ff=unix
  • 字符串替换

vi/vim 中可以使用 :s 命令来替换字符串.

:s/vivian/sky/ 替换当前行第一个 vivian 为 sky
:s/vivian/sky/g 替换当前行所有 vivian 为 sky

:n,$s/vivian/sky/ 替换第 n 行开始到最后一行中每一行的第一个 vivian 为 sky
:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky
(n 为数字,若 n 为 .,表示从当前行开始到最后一行)

:%s/vivian/sky/(等同于 :g/vivian/s//sky/) 替换每一行的第一个 vivian 为 sky
:%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky

可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符
:s#vivian/#sky/# 替换当前行第一个 vivian/ 为 sky/

Comments

Cor-Ethan, the beverage → www.iirii.com