linux vi 基本操作
光标移动(命令模式的上下左右):k
,j
,h
,l
保存/退出
仅保存::w
退出::q
(如果有修改要先保存)
保存并退出::wq
(x效果一致)
强制退出::q!
模式
命令模式:esc
(当前需要处于插入或可视模式)
插入模式:i
(光标前插入);a
(光标后插入);I
(行首插入);A
(行尾插入)
可视模式:v
(自由复制时会用到该模式)
删除
删除单个所在字符(非插入模式):x
删除光标前单个字符:X
删除单词(从光标开始):dw
删除光标到行首字符(不包含所在字符):d0
删除光标到行末字符(不包含所在字符):d$
删除当前行:dd
撤销
撤销操作:u
反撤销:ctrl+r
复制/剪切
复制当前行:yy
剪切当前行:dd
(删除)
替换光标字符:r
复制剪贴板内容:p
(复制到当前行)P
(复制到下一行)
选择复制内容:按v进入可视模式,移动光标(选中目标),按y复制到剪贴板
查找
/string
回车:从光标位置开始查找 string,n
:下一个;N
:上一个
还能给查找撤职格式,比如 :set ic
(忽略大小写):set hls
(高亮显示):set is
(部分匹配)
所在单词直接#
:查找当前单词,n
:下一个;N
:上一个(中文就卵了)
格式
tab:>>
光标所在位置右移一个 tab;<<
光标所在位置左移一个 tab
自动换行
:set wrap(换行)
:set nowrap(不换行)
跳转
翻整页:ctrl+f
(下页,forward);ctrl+b
(上页,backward)
翻半页:ctrl+d
(下半页,down);ctrl+u
(上半页,up)
文件头:gg
文件尾:G
数字gg:跳转到指定行(同数字G,:数字 回车)
屏幕顶部:H
(head)
屏幕中间:M
(middle)
屏幕底部:L
(low)