vim==vi improve最初是乙個大神完全把vi複製到他自己的計算機,但後來慢慢地變成了不斷增加新功能,便於程式設計人員coding的過程,vim設計的基礎是你在使用時完全基於鍵盤,他希望你整個編輯都在使用鍵盤而不是滑鼠,所以鍵盤的每個按鍵都有固定的用法,同時這也注定vim有很多的命令需要去記憶。
進入vi/vim
1.vim filename #開啟或者新建檔案,並且游標會定位在第一行首
2.vim +n filename #開啟檔案,游標定位在第n行首
3.vim + filename #開啟檔案,游標定位在最後一行首
4.vim +/pattern filename #開啟檔案並將游標置於第乙個與pattern匹配的行首
5.vim -r filename #以恢復的模式開啟檔案
同時開啟多個檔案
1.vim file1 file2 ... #水平開啟多視窗,
2.vim -o file1 file2 ... #水平開啟多視窗,
3.vim -o file1 file2 ... #垂直開啟多視窗,
4.vim -d file1 file2 ... #垂直開啟多視窗,並且進行比較
5.vimdiff file1 file2 .. #等同於上一句
進入vim命令列下是開啟新的檔案
:new 檔名 #開啟或新建已有的乙個檔案,此時是縱向的
:split 檔名, #也可以簡寫為:sp+檔名,此時也是縱向的
:vsplit 檔名, #也可以簡寫為:vsp+檔名,此時是橫向的
切換多個視窗的方式
1.ctrl+ww #在不同的檔案間相互轉換
2.:n next #下乙個檔案(用於vim file1 file2 ... )
3.:n #前乙個(用於vim file1 file2 ... )
4.close或q! #最後乙個不能使用close
5.:n file2 #跳到file2檔案(用於vim file1 file2 ... )
多標籤操作
1.:tabnew #新建標籤頁
2.:tabs #顯示已開啟標籤頁的列表
3.:tabc #關閉當前標籤頁 ,最後乙個不能使用
4.:tabn #移動到下乙個標籤頁
5.:tabp #移動到上乙個標籤頁
6.:tabfirst #移動到第乙個標籤頁
7.:tablast #移動到最後乙個標籤頁
關閉視窗
q或 close #關閉當前視窗
only #保留當前視窗,關閉其它所有視窗
qall(qa) #退出所有視窗
wall #儲存所有視窗
exit #儲存所有視窗
螢幕翻滾類命令
ctrl+u #向檔案首翻半屏
ctrl+d #向檔案尾翻半屏
ctrl+f #向檔案尾翻一屏
ctrl+b #向檔案首翻一屏
插入命令
i #在游標前 我感覺這乙個足矣
刪除命令
ctrl+u #刪除輸入方式下所輸入的文字 實習的時候寫指令碼不經意發現的
搜尋及替換命令
/pattern #從游標開始處向檔案尾搜尋pattern
?pattern #從游標開始處向檔案首搜尋pattern
n #在同一方向重複上一次搜尋命令
n #在反方向上重複上一次搜尋命令
:s/p1/p2/g #將當前行中所有p1均用p2替代
:n1,n2s/p1/p2/g #將第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g #將檔案中所有p1均用p2替換 以上三條類似於sed的替換
最後行方式命令
:n1,n2 co n3 #將n1行到n2行之間的內容拷貝到第n3行下
:n1,n2 m n3 #將n1行到n2行之間的內容移至到第n3行下
:n1,n2 d #將n1行到n2行之間的內容刪除
:w #儲存當前檔案
:e filename #開啟檔案filename進行編輯
:x #儲存當前檔案並退出
:q #退出vi
:q! #不儲存檔案並退出vi
:!command #執行shell命令command 經典例子:在非root許可權下修改了乙個檔案,想要儲存,可以使用 w! sudo !!
:n1,n2 w!cmd #將檔案中n1行至n2行的內容作為command的輸入並執行之,若不指定n1,n2,則表示將整個檔案內容作為command的輸入
:r!command #將命令command的輸出結果放到當前行
標籤和視窗都新增的效果圖
vim 快捷操作
移動游標0 行首,跳至行首,不管有無縮排,就是調到第0個字元 行首,跳至行首的第乙個字元 行尾,跳至行尾 gg 文首,跳至文首 g 文尾,跳至文尾編輯dd 刪除,刪除游標所在的行 yy 複製,複製游標所在的行 p 貼上,貼上裁剪版中的內容到游標所在行的下面一行 u 撤銷查詢替換 string 搜尋,...
VIM 快捷操作
linux就是這個範 的章節 7.1.2 中,有個腦圖很好記。vim cheat sheet 移動單個字元hj kl移動單詞 w下一單詞第乙個字元 w下一長單詞第乙個字元 e下一單詞最後乙個字元 e下一長單詞最後乙個字元 b前一單詞第乙個字元 b前一長單詞第乙個字元 移動行0到行首 到行尾 行號g跳...
Vim快捷鍵操作
1 左移h 右移l 下移j 上移k 2 向下翻頁ctrl f,向上翻頁ctrl b 3 向下翻半頁ctrl d,向上翻半頁ctrl u 4 移動到行尾 移動到行首0 數字 移動到行首第乙個字元處 5 移動游標到下乙個句子 移動游標到上乙個句子 6 移動到段首 7 移動到下乙個詞w,移動到上乙個詞b ...