vi與vim的抓狂

1. vi和vim的關係:
    vim可以理解是vi的升級版,支持shell script編程;
    vi存在原因:所有Unix Like系統均內建vi編輯器,同時個別工具會主動呼叫vi,如crontab.
    
2. 關於vi的三種模式:
    一般模式
    編輯模式
    命令模式

3. vi的一般模式命令:
    1)光標移動:
        單個字符:h(左)、l(右)、k(上)、j(下);
        行頭:^/0/Home,行尾:$/End;
        多行:nk、nj。如向上移動10行:10k;
        翻頁:向上一頁,ctrl + b;向下一頁,ctrl + f;向上半頁,ctrl + u;向下半頁,ctrl + d;
        任意行:nG;
        文件頭:gg/1G,文件未:G;
        屏幕頭:H,屏幕尾:L,中間:M
        
    2)查找替換:
        向上查找:?word
        向下查找:/word
        上一處:n,下一處:N (注意:當向上查找時,n與N作用扭轉)
        替換::n1,n2s/word1/word2/g[c],其中n1爲開始行,n2爲結束行,c爲替換前是否需要確認。 如從第一行到最後一行尋找word1字符串,並將該字符串叏代爲word2,且在替換前顯示提示字符給用戶確認,命令爲:1,$s/word1/word2/gc.
        
    3)刪除:
        刪除字符:
            向前,X. 一次刪除多個,nX
            向後,x. 一次刪除多個,nx
            行頭到當前位置,d0
            行尾到當前位置,dG
        刪除行:
            向下刪除n行,ndd
            刪除當前行,dd
            
    4)複製與粘貼:
        複製:
            多行:nyy
            單行部分字符:行頭到當前光標,y0;行尾到當前光標,y$
        粘貼:
            在光標下一行粘貼,p
            在光標上一行粘貼,P
            注意,當複製內容爲單行部分字符時,p爲當前光標後邊粘貼,P爲光標前邊複製
            
    5)合併:
        當前行和下一行合併:J
        
    6)撤銷與重做:
        撤銷:u
        重做:ctrl + r
        
4. vi的插入模式:
    1)插入:
        當前行:
            光標前,i;光標後,a
            行首,I;行尾,A
        換行:
            上一行,O;下一行,o
    2)替換:
        單個替換,r
        多個替換,R (知道ESC結束)

5. vi的命令模式:
    保存: :w
    退出: :q
    強制退出: !
    文件有變動則保存並退出,否則不退出:ZZ
    另存爲: :n1,n2 w filename。 其中,n1、n2分別爲開始、結束行數,filename爲另存爲文件。
    
6. vim的swap文件處理:
    只讀,O
    恢復,R
    編輯,E
    退出,Q
    中止,A
    注意,最終swap文件需要手動刪除。
    
7. vim的塊選擇:
    長方形,ctrl + v
    行,V
    字符,v
    複製,y
    刪除,d
    粘貼,p
    
8. vim的多文檔:
    同時編輯多個文件:vim t1 t2
    列舉文件列表::files
    文件切換:切換到下一個文件,:n,切換到上一個文件,:N
    注意,切換時,可能會提示加! (那就執行 :n!就好)    

9. vim的多窗口:
    操作步驟:
        vim test
        :sp [file] (如果填寫,則爲新窗口打開新文件,否則爲當前文件)
        ctrl + w + j(切換到下一個窗口),ctrl + w +k(切換到上一個窗口)
        ctrl + w + q,保存並退出當前窗口
        
10. vim的設置:
    顯示/取消行號: :set nu/:set nonu (只有當前文件當前編輯被設置,下次打開還是爲初始設置)
    永久設置:vim ~/.vimrc
    vim系統操作記錄:~/.viminfo
   
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章