關於vim的基礎知識

2021-07-25 05:37:52 字數 3703 閱讀 9440

一、基礎知識

vim最令人混淆的特徵之一是她擁有3種模式.

1.  插入模式: 輸入文字

2.  命令模式:執行命令. 也稱為正常模式.

3.  ex模式: 執行冒號 命令

插入模式並不是預設的模式,您必須按下i來進入插入模式,在螢幕上輸入一些文字。按下按鈕將從插入模式轉到命令模式。命令模式用於移動和操縱文字,有時以非常有趣的方式進行。ex模式用於執行冒號命令,比如儲存,查詢/替換以及配置vim等。欲儲存文字,您只需要在正常模式下輸入:進入ex模式並輸入:wfilename。退出vim請執行冒號命令:q.。總結如下:

vim (啟動vim)

i (進入插入模式)

《輸入文字》

(回到命令模式)

:wfilename (儲存檔案為'filename')

:q (退出vim)

vimfilename (開啟您剛才在vim中儲存的檔案)

二、常用命令

當你進入vi 時,會首先進入命令方式(同時也是編輯方式)。

按下i就進入插入方式,使用者輸入的可視字元都新增到檔案中,顯示在螢幕上。

按下esc就可以回到命令狀態(同時也是編輯方式)。

編輯方式和命令方式類似,都是要輸入命令,

但它的命令不要以:開始,它直接接受鍵盤輸入的單字元或組合字元命令,

例如直接按下u 就表示取消上一次對檔案的修改,相當於windows 下的undo 操作。

編譯方式下有一些命令是要以/開始的,

例如查詢字串就是:/string 則在檔案中匹配查詢string 字串。

在編輯模式下按下:就進入命令方式。

基本命令解釋:

1.游標命令

k、j、h、l——上、下、左、右游標移動命令。

雖然您可以在linux 中使用鍵盤右邊的4 個游標鍵,

但是記住這4 個命令還是非常有用的。這4 個鍵正是右手在鍵盤上放置的基本位置。

ng——跳轉命令。n 為行數,該命令立即使游標跳到指定行。

ctrl+g——游標所在位置的行數和列數報告。

w、b——使游標向前或向後跳過乙個單詞。

2.編輯命令

cw 、dw——改變( 置換)/刪除游標所在處的單詞的命令 (c=change 、d=delete)。

x、d$、dd——刪除乙個字元、刪除游標所在處到行尾的所有字元以及刪除整行的命令。

3.查詢命令

---- /string、?string——從游標所在處向後或向前查詢相應的字串的命令。

4.拷貝複製命令

---- yy、p——拷貝一行到剪貼簿或取出剪貼簿中內容的命令。

常用操作:

無論是開啟新檔或修改舊檔案,都可以使用vi,所需指令為:

$ vi filemane

如果檔案是新的,就會在熒幕底部看到乙個資訊,告訴使用者正在建立新檔案。

如果檔案早已存在,vi 則會顯示檔案的首廿四行, 使用者可再用游標(cursor)上下移動。

上面是乙個經vi 開啟的模擬檔案,一行開始處的波折號(~)表示檔案的結尾。

—指令i 在游標處插入正文

—指令i 在一行開始處插入正文

—指令a 在游標後追加正文

—指令a 在行尾追加正文

—指令o 在游標下面新開一行

—指令o 在游標上面新開一行

在插入方式下,不能打入指令,必需先按〈esc〉鍵,返回命令方式。

假若戶不知身處何態,也可以按〈esc〉鍵,不管處於何態,都會返回命令方式。

在修改檔案時,如何存檔及退出指定檔案都非常重要。在vi 內,行使存檔或退出的指令時,

要先按冒號(:),改變為命令方式,使用者就可以看見在熒幕左下方,出現冒號(:),

顯示vi 已經改為指 令態,可以進行存檔或退出等工作。

:q!放棄任何改動而退出vi,也就是強行退出

:w 存檔

:w! 對於唯讀檔案強行存檔

:wq 存檔並退出vi

:x 與wq 的工作一樣

:zz 與wq 的工作一樣刪除正文

刪除或修改正文都是利用編輯方式,故此,下面所提及的指令只需在編輯方式下,

直接鍵入指令即行。

—x 刪除游標處字元(character)

—nx 刪除游標處後n 個字元

—nx 刪除游標處前n 個字元

—ndw 刪除游標處下n 個單詞(word)

—dd 刪除整行

—d$或d 刪除由游標至該行最末

—u 恢復前一次所做的刪除

當使用vi 修改正文,加減字元時,就會採用另一組在編輯方式下操作的指令。

— r char 由char 代替游標處的字元

—rtext〈esc〉由text 代替游標處的字元

—cwtext〈esc〉由text 取代游標處的單詞

—ctext〈esc〉由text 取代游標處至該行結尾處

—cc 使整行空白,但保留游標位置,讓你開始打入

—如刪除指令一樣,在指令前打入的數,表示執行該指令多少次。

要檢索檔案,必需在編輯方式下進行。

—/str〈return〉向前搜尋str 直至檔案結尾處

—?str〈return〉往後搜尋str 直至檔案開首處

—n 同一方向上重複檢索

—n 相反方向上重複檢索

—vi 纏繞整個檔案,不斷檢索,直至找到與模式相匹配的下乙個出現。

全程替換命令:

:%s/string1/string2/g 在整個檔案中替換「string1」成「string2」。

如果要替換檔案中的路徑:

使用命令「:%s#/usr/bin#/bin#g」可以把檔案中所有路徑/usr/bin 換成/bin。

也可以使用命令「:%s/\/usr\/bin/\/bin/g」實現,其中「\」是轉義字元,表明其後的「/」字元是具有實際意義的字元,不是分隔符。

命令如下:

---- vi file1 file2

---- yy 在檔案1 的游標處拷貝所在行

---- :n 切換到檔案2(n=next) 或者按ctrl+ww,就在兩個檔案間切換。

---- p 在檔案2 的游標所在處貼上所拷貝的行

---- :n 切換回檔案1 (ctrl +ww 也可實現切換)

將檔案中的某一部分修改儲存到臨時檔案,

例如僅僅把第20~59 行之間的內容存檔成檔案/tmp/1,我們可以鍵入如下命令。

---- vi file

---- :20,59w /tmp/1

如果要在 vi 執行期間,轉到shell 執行,使用驚嘆號(!)執行系統指令,

例如在vi 期間,列出當前目錄內容,可以鍵入 :

:!ls

另一方面,使用者可以在主目錄中建立.exrc 環境檔案,用set 打入選項,

每次呼叫vi 時,就會讀入.exrc 中的指令與設定。下面是.exrc 環境檔案的例項:

set wrapmarging=8

set showmode

set autoindent

vim之vim基礎知識

接觸了vim有一段時間了,但一直都是簡單的用vim編寫一些程式,和寫一些文字。而且只是簡單的了解一下操作,沒有深入的學習。先總結一下基礎的操作。vim被稱為神一樣的編輯器,而emacs被稱為神用的編輯器。我的理解是當你用vim得心應手時,vim就會在你手裡變成乙個神器。而emacs是你要先稱為神,然...

關於OSPF的基礎知識

ospf open shortest path first 開放式最短路徑優先協議 router ospf 程序號 1 65535本地程序號,每台路由器可不一樣 network 網路號 反掩碼 area 區域號 show ip protocals 檢驗是否已配置ospf show ip ospf 顯...

關於DOM的基礎知識

dom獲取元素的方法 在整個文件中,通過元素的id獲取到這個元素物件 獲取的是乙個元素 如果頁面中id重複了,那麼這個方法預設只獲得第乙個元素 在ie6 7中,會把表單元素 input 的name屬性值當做id來使用 在ie6 7中,不區分id的大小寫 如果沒有獲取到,返回的結果是null 獲取的是...