移动:

gg        移动到第一行

G          移动到最后一样

16 G     移动到第16行


删除:

x           删除当前字符,可以5x

dd        删除当前行,可以5dd

dw        删除当前单词

d$         删除当前位置到结尾内容

J            删除行位换行符,和下一行拼接

u           撤销

A           从行尾开始输入内容

r  char   用char替换当前字符

R text    用text替换,边输入边替换,ESC建退出


复制粘贴:

yy         复制当前行

yw        复制一个单词

y$         复制到行结尾

选择复制:用v标记开始复制的位置,然后上下左右移动光标到结束的位置,然后用y进行复制。


查找和替换:

/word    查找要搜索的文字

:s/old/new/        用new来替换old,只是替换一个单词

:s/old/new/g      替换一行的old

:n,ms/old/new/g     替换所有在n和m行之间的所有old

:%s/old/new/g        替换文本的所有old

:%s/old/new/gc      替换时出现提示,用y键逐个替换


缩进:

1,10>            1到10行前加缩进

1,10<            1到10取消缩进


其他:

:set  nu            设置行号

:set  nonu        取消行号

:n,ms/^/#/g    n行到m行进行注释

:n,ms/^#//g    取消注释

shift+zz              保存退出


导入:

:r  /etc/demo.php   导入文件

:r !command           将命令结果导入到vi

例::r !date             将系统时间导入到vi