光标移动:(一次移动一个光标位,前面可以加数字,代表一次移动数字位个光标)
左:h(同键盘上←)
右:l(同键盘上→)
上:k(同键盘上↑)
下:j(同键盘上↓)
单词位移动:(前面可以加数字,同上)
下一个单词首位:w
下一个单词尾位:e
上一个单词首位:b
行内移动:
行首:^或0
行尾:$
行间移动:
跳到最后一行:G 直接跳到第n行:nG
跳到首行:gg
翻屏:
向下翻屏:Ctrl+f
向上翻屏:Ctrl+b
向下翻半屏:Ctrl+d
向上翻半屏:Ctrl+u
删除单个字符:
删除光标所在处单个字符:x 删除光标所在处后n个字符 : nx
删除行:
删除光标所在行:dd 删除光标所在行下n行:ndd
复制行:
复制整行:yy 复制n行:nyy
修改:
先删除当前行,再转换为输入模式:cc 先删除当前n行,再转换为输入模式:ncc
粘贴行:
P:粘贴到行上方
p:粘贴到行下方
替换光标处字符(当前一个):r
替换从光标处开始字符,依次向后:R
可视化模式:
按字符选取:v
按行选取:V
编辑模式:
在光标所在处编辑:i
在光标所在行行首编辑:I
撤销编辑:
撤销前一次编辑操作:u 撤销n次操作:nu
撤销上一次撤销动作:Ctrl+r
重复上一次操作:.
查找:
向下查找:/ 下一个 :n 上一个:N
向上查找;? 顺序与上相反
重新编辑全文:(:)%d
替换当前行:(:)s/被替换字符或正则表达式/替换之后字符/g 从start处到end处替换:start,ends/被替换字符或正则表达式/替换之后字符/g
编辑多个文件:
vi 文件1 文件2 ……
切换下一个文件:(:)n
切换上一个文件:(:)N
分窗口显示多个文件:
vi 文件1 文件2
-o:水平显示
在窗口间切换光标:Ctrl+w,之后加箭头
显示行号:set nu , 取消行号:set nonu
编辑时自动缩进: set ai 取消: set noai
配置文件:/etc/virc