vim模式:
編輯模式
輸入模式
末行模式
模式轉換
編輯-->輸入
i:在當前光標所在字符前,轉爲輸入模式
a:在當前光標所在字符後,轉爲輸入模式
o:在當前光標所在行下方,插入一行,轉爲輸入模式
I:在當前光標所在行首,轉爲輸入模式
A:在當前光標所在行尾,轉爲輸入模式
O:在當前光標所在行上方,插入一行,轉爲輸入模式
輸入-->編輯
ESC
編輯-->末行
:
一、打開文件
#vim /path/to/somefile
vim +#:打開文件並定位到底#行
vim + :打開文件並定位到最後一行
vim +/PATTERN:打開文件,定位至第一次被PATTERN匹配的行首
二、關閉文件
1、末行模式下關閉文件
:q 退出
:wq 保存退出
:w 保存
:w! 強制保存
:x 保存退出
2、編輯模式下退出
zz:保存並退出
三、移動光標
1、逐字符移動
h:左
l:右
j:上
k:下
2、以單詞爲單位移動
w:移植下一個單詞的詞首
e:跳至下一個單詞的詞尾
b:跳至當前或前一個單詞的詞首
#w:跳至#個單詞後的詞首
3、行內跳轉
0:跳轉至行首
^:行首的第一個非空白字符
$:跳至行尾
4、行間跳轉
#G:跳轉至第#行
G:跳轉至最後一行
四、翻屏
ctrl+f:向下翻一屏
ctrl+b:向上翻一屏
ctrl+d:向上翻半屏
ctrl+u:向上翻半屏
五、刪除單個字符
x:刪除光標所在處的單個字符
#x:刪除光標所在處及之後的#個字符
六、刪除命令
#dw:向後刪除#個單詞
#db:向前刪除#個單詞
dd:刪除當前所在行
#dd:刪除#行
末行模式下:1,100d 表示刪除第1-100行
:1,$d 表示刪除文件中所有內容
七、粘貼
p:如果刪除或複製爲整行內容,則粘貼在光標所在行的下方,如果複製或刪除的內容爲非整行,則粘貼至光標所在字符的後面
P:如果刪除或複製爲整行內容,則粘貼在光標所在行的上方,如果複製或刪除的內容爲非整行,則粘貼至光標所在字符的前面
八、複製命令
y,用法同d命令
九、替換模式
R:進入替換模式
十、撤銷編輯操作
u:撤銷前一次操作
#u:撤銷前#次操作
十一、可視化模式
v:按字符選取
V:按矩形選取
十二、查找
/PATTERN
n:查找下一次
十三、查找替換
在末行模式下,使用s命令
ADDR1,ADDR2s/PATERN/string/g
十四、使用vim編輯多個文件
vim FILE1 FILE2 FILE3
:next 切換到下一個文件
:prev 切換到上一個文件
:last 切換到最後一個文件
:first 切換到第一個文件
退出 :qa退出全部
十五、分屏顯示
ctrl+w, s:水平拆分窗口
ctrl+w, v:垂直拆分窗口
在窗口見切換光標
ctrl+w, ARROW
:qa關閉所有窗口
十六、分窗口顯示多個文件
vim -o:水平分割顯示
vim -O:垂直分割顯示
十七、將當前文件中部分內容另存爲另一個文件
末行模式下使用w命令
:w
:ADDR1,ADDR2w /path/to/somewgere
十八、將另一個文件內內容填充至當前文件
:r /path/to/somefile
十九、和shell交互
:! COMMAND
二十、顯示行號
:set nu 顯示行號
:set nonu 關閉行號
:set ic 忽略區分大小寫
:set ai 自動縮進
:syntax on 開啓語法高亮
:syntax off:關閉語法高亮
二十一、配置文件
/etc/vimrc
~/.vimrc