一 移动光标的方法

【crtl】+【f】屏幕向下移动一页
【crtl】+【b】屏幕向上移动一页
0或功能键home, 移动到这一行的最前面的字符处
$或功能键end, 移动到这一行的最后面的字符处
G 移动到这个文件的最后一行
nG 移动到这个文件的第n行,n为数字
gg 移动到这个文件的第一行
n【enter】 光标向下移动n行,n为数子
u 复原前一个操作
【crtl】+r 重做前一个操作
. 小数点,重复前一个操作
 
 
查找和替换
/word 向下寻找一个名称为word的字符串
?word 向上寻找一个字符串为word
n 重复向下查找
N 重复向上查找
:n1,n2s/word1/word2/g n1,n2为数字,查找n1行到n2行的word1然后替换为word2
:1,$s/word1/word2/g 查找1行到最后一行的word1然后替换为word2
:1,$s/word1/word2/gc 查找1行到最后一行的word1然后替换为word2,并提示用户确认信息
 
 
删除复制和粘贴
x,X x=【Backspace】,X=【delete】
nx 连续向后删除n个字符,n为数字
dd 删除整行
ndd 向下删除n行,n位数字
yy 复制光标所在行
nyy 复制光标所在的向下n行
p,P p粘贴在光标所在下一行,P粘贴光标所在上一行
 
 
进入插入模式或替换模式
i,I i光标所在处插入,I为在目前所在行的第一个非空格符处开始插入
a,A a光标所在的下一个字符处插入,A为从光标所在行的最后一个字符处开始插入
o,O o光标所在行下一行插入,O为上一行插入
r,R r替换光标所在的那一个字符一次,R一直替换
 
命令行的保存离开
:w 保存
:w! 强制写入保存
:q 离开vi
:q! 如修改过則不保存,强制退出
:wq 保存后离开vi
:!command vi模式下显示shell命令
:set nu 显示行号
:set nonu 取消行号
:w [filename]  另存为filename文件
 
六      块选择
v,V,[crtl]+v
v          字符选择
V          行选择
[crtl]+v    快选择
y          复制选择的块
d          删除选择的块
 
七      多文件编辑
 
vim /etc/hosts /etc/man.cfg
一个vim打开了两个文件
:n          编辑下一个文件
:N          编辑上一个文件
:file       列出这个vim打开的所有文件
 
此时在使用复制,等操作时很简单,有点共用粘贴板得意思
 
八       多窗口功能
两种情况
1,一个文件太大,如果你想前后文件对比,可以用到多窗口
2,有两个需要对比的文件,不想用多文件编辑,可以用多窗口
 
:sp [filename]    打开一个新窗口如果不加文件名则分窗口本文件,否则为多文件
[ctrl]+w+j
[ctrl]+w+向下键   按键方法,先按下[ctrl]不放,再按下w后放开所有的按键,然后再按下j(向下键),则光标移动到下方的窗口
 
[ctrl]+w+k
[ctrl]+w+向上键   同上,但是是移动到上边的窗口
 
 
[ctrl]+w+q        离开窗口
或   :q