溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

vim編輯器--使用詳解

發(fā)布時間:2020-08-10 12:22:41 來源:網(wǎng)絡(luò) 閱讀:1650 作者:weilovepan520 欄目:網(wǎng)絡(luò)安全

vim編輯器

1.基本模式:

    編輯模式,命令模式

    輸入模式;

    末行模式;

2.打開文件,模式間轉(zhuǎn)換

    #vim [OPTION]... FILE...

        +#:打開文件后,直接讓光標處于第#行的行首

        -/PATTERN:打開文件后,直接讓光標處于第一個被PATTERN匹配到的行的行首;

    模式轉(zhuǎn)換:

        編輯模式 --> 輸入模式

            i:insert,在當(dāng)前光標所在處輸入

            a:append,在當(dāng)前光標所在處的后邊輸入

            o:open,在當(dāng)前光標的下面新開一行輸入

            I:在當(dāng)前光標所在行的行首輸入

            A:在當(dāng)前光標所在行的行尾輸入

            O:在當(dāng)前光標所在行的上面新開一行輸入

        輸入模式 --> 編輯模式

            ESC

        編輯模式 --> 末行模式

            :

        末行模式 --> 編輯模式

            ESC(正常按2次,按1次反應(yīng)很慢)

        關(guān)閉模式:

            :q    沒有任何修改的時候,在末行模式退出

            :q!   不保存做出的修改,強制不保存不退出

            :wq   保存做出的修改,保存退出

            :x    保存退出

            :w /PATH/SOMESWHERE    保存到指定的地方

            ZZ    在編輯模式,直接保存退出,無需切換到末行模式再保存退出

3.光標跳轉(zhuǎn)

    字符間跳轉(zhuǎn)

        h:向左

        j:向下

        k:向上

        l:向右

    單詞單跳轉(zhuǎn)

        w:跳轉(zhuǎn)到下一個單詞的詞首

        e:跳轉(zhuǎn)到當(dāng)前或下一個單詞的詞尾

        b:跳轉(zhuǎn)到當(dāng)前或上一個單詞的詞首

    行首行尾跳轉(zhuǎn)

        ^:跳轉(zhuǎn)到當(dāng)前行的行首

        0:跳轉(zhuǎn)到當(dāng)前行的行著

        $:跳轉(zhuǎn)到當(dāng)前行的行尾

    行間移動

        G:跳轉(zhuǎn)到最后一行

        #G:跳轉(zhuǎn)到第#行

        1G,gg:跳轉(zhuǎn)到首行

4.vim的編輯命令

    字符編輯

        x:刪除當(dāng)前光標所在處的字母

        #x:刪除當(dāng)前光標所在處,向后數(shù)的第#個字符

        xp:交換當(dāng)前光標所在處與其后面字符的交換

        r:replace,按下r鍵,再按a鍵,表示把當(dāng)前光標所在處的字符替換為a

    刪除命令:

        d:刪除命令,可以結(jié)合光標跳轉(zhuǎn)字符,實現(xiàn)范圍內(nèi)刪除

            d$:刪除當(dāng)前光標所在處至行尾的內(nèi)容

            d^,d0:刪除當(dāng)前光標所在處至行首的內(nèi)容

            dd:刪除當(dāng)標所在行一整行

            #dd:實現(xiàn)在多行刪除,以當(dāng)前光標所在行為起始  

            dw:

            de:

            db:    

    粘貼命令(p,put,paste):

        p:緩沖區(qū)存的如果為事先,則粘貼在當(dāng)前光標所在行的下方;否則,粘貼至光標所在處的后面

        p:緩沖區(qū)存的如果為事先,則粘貼在當(dāng)前光標所在行的上方;否則,粘貼至光標所在處的后面

    復(fù)制命令(y,yank):

        y:復(fù)制,工作行為類似于d命令

            y^:復(fù)制當(dāng)前光標所在處至行首

            y0:復(fù)制當(dāng)前光標所在處至行首

            y$:復(fù)制當(dāng)前光標所在處至行尾

            yy:復(fù)制當(dāng)前光標所在行的一整行

            #yy:實現(xiàn)多行復(fù)制,以當(dāng)前光標為起始

            yw:

            ye:

            yb:

    改變命令(c,change):

        c:修改    

            編輯模式 --> 輸入模式

            c$:修改光標處至行尾,直接把光標所在處至行尾的內(nèi)容刪除,并變?yōu)椴迦肽J?br />

            c^:修改光標處至行首,直接把光標所在處至行首的內(nèi)容刪除,并變?yōu)椴迦肽J?/p>

            c0:修改光標處至行首,直接把光標所在處至行首的內(nèi)容刪除,并變?yōu)椴迦肽J?/p>

            cw:

            cb:

            ce:

            cc:修改整行,并變?yōu)椴迦肽J?br />

    撤消此前的編輯(u,undo):

            u:撤消前一次的操作

            #u:撤消此前指定次數(shù)的操作

    撤消此前的撤消:即使用u撤消之前的操作后,又后悔了,想要變回來

            ctrl+r

    重復(fù)前一個編輯動作:

            .

    可視化模式:

        v:按字符選定

        V:按行選定

        注意:經(jīng)常結(jié)合編輯命令,實現(xiàn)多行刪除,復(fù)制等

     翻屏操作:

        ctrl+f:向文件尾部翻一屏

        ctrl+b:向文件首部翻一屏

        ctrl+d:向文件尾部翻半屏

        ctrl+u:向文件首部翻半屏

5.vim中的末行模式

    內(nèi)建的命令行接口

    (a)地址界定

            :start_pos,end_pos

                #:具體第#行,例如2表示第2行

                #,#:從第幾行開始到第幾行

                #,+#:從第幾行開始加幾行

                .:點表示當(dāng)前行

                $:表示最后一行

                $-1:表示倒數(shù)第2行

                %:表示全文,等于1,$

                /pat1/,/pat2/

                     從第一次被模式pat1匹配開始,到第一次被模式

            使用方式:后跟一個編輯命令

                 d:表示匹配成功后執(zhí)行刪除動作

                 y:表示匹配成功后執(zhí)行復(fù)制動作

                 w:表示匹配成功后執(zhí)行寫入到指定的文件中

                        w /PATH/SOMEWHERE

     (b)查找

            /PATTERN:從當(dāng)前光標所在處向文件尾部查找

            ?PATTERN:從當(dāng)前光標所在處向文件首部查找

                n:與命令方向同方向

                N:與命令方向反方向

     (c)查找并替換

            s:在末行模式下完成查找替換操作

                s/要查找的內(nèi)容/替換為的內(nèi)容/修飾符

                    要查找的內(nèi)容:可以使用正則表達式

                    替換為的內(nèi)容:不能使用正則表達式,但可以進行引用&,\1,\2等引用符

                修飾符:

                    i:忽略大小寫

                    g:全局替換,默認情況下,每一行只替換第一次出現(xiàn)的;

                查找替換中的分隔符"/"可替換為其它字符;例如

                    s@@@  例:%s@

                    s###  例:%s#

6.多文件模式

    #vim FILE1 FILE2 FILE3 ...

        :next  下一個

        :last  最后一個

        :first 第一個   

        :prev  前一個

        :wall  保存所有

        :qall  退出所有

        :wqall 保存所有并退出

    多文件窗口分隔模式:

        #vim -o|-O FILE1 FILE2 ...

            -o:水平分割

            -O:垂直分割

            在多個文件窗口中進行切換:

                ctrl+w,Arrow(上下左右箭頭)

    單文件窗口分割

        ctrl+w,s(水平分割文件)

        ctrl+w,v(垂直侵害文件)

7.定制vim的工作特性

    (a)設(shè)置行號

            顯示行號:set nu(number)

            不顯示行號:set nonu(nonumber)

    (b)搜索命中的單詞高亮顯示

            顯示高亮:set hl(hlsearch)

            不顯示高亮:set nohl(nohlsearch)

    (c)縮進

            自動縮進:set ai(autoindent)

            取消自動縮進:set noai(noautoindent)

    (d)語法著色

            顯示顏色:syntax on

            不顯示顏色:syntax off

    (e)自動匹配括號

            自動匹配括號:set sm(showmatch)

            不自動匹配括號:set nosm(noshowmatch)

    (f)忽略字符大小寫

            忽略大小寫:set ic(ignorecase)

            不忽略大小寫:set noic(noignorecase)

8.配置文件

    #vim /etc/vimrc    對全局做配置,安裝好vim,此文件就已經(jīng)存在

    #vim ~/.vimrc      對用戶做配置,此文件事先可能不存在,需要自己創(chuàng)建

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI