1. 程式人生 > 其它 >重新點亮linux 命令樹————文字檢視vi和vim[五]

重新點亮linux 命令樹————文字檢視vi和vim[五]

前言

簡單整理一下vi和vim,主要介紹一下四種模式。

正文

四種模式分別是:

  1. 正常模式(normal-mode)

  2. 插入模式(insert-mode)

  3. 命令模式(command-mode)

  4. 可視模式(visual-model)

輸入vi,可以看到

上面寫道vim是vi的升級版。

正常模式

什麼是正常模式呢?

利用vim text 這樣就是進入了正常模式。

那麼進入後,如何進行游標移動呢?

hzkl進行移動。h是左移動j是向下k是向上l是向右移動。

那麼我們鍵盤不是有上下左右嗎?這些不能移動嗎?一般情況下是可以移動的,但是到了一些字元情況下,可能出現亂碼。

那麼如何進行復制呢?

使用yy就進行當前行的複製了。

這裡就對第一行進行復制。

然後使用p進行貼貼。

那麼如果我們要複製3行呢?

可以先輸入3,然後輸入yy進行復制。

左下角會出現複製3行的資訊。

那麼我在最後一行進行貼貼,按p:

那麼如果我需要複製當前游標到游標結尾的資訊。

比如說:

我需要複製4到6呢。可以使用y$,這樣的字元。

然後我進行p貼貼,可以看到多了4到後面的資訊。

那麼下面來看一下剪貼命令吧。

dd 就是將當前進行剪下,d$就是剪切當前位置到行末尾的字元。同樣要剪下多行的話,可以使用先輸入一個數字,然後使用dd進行剪下。

這裡就不演示了,可以自我嘗試。

那麼下面有一個非常關鍵的命令,可以使用u來撤銷,如果撤銷多步,那麼可以使用多次u。

那麼又有一個問題啊,當我們本來要撤銷非同步,但是不小心按了兩個u,那麼這個怎麼破呢?

可以使用ctrl+r進行撤回剛才的撤銷。

那麼如何刪除單個字元呢,按x,其實x不是刪除是剪下。

那麼要替換當前字元呢?可以使用r,然後再次輸入字元進行替換。

如果我們要移動到指定的行呢?可以使用數字+G。

可以使用命令模式set nu檢視行數:

如何想到達第一行呢?直接輸入gg。

如果想到最後一行呢?可以使用G,可以直接到最後一行。

那麼如何到一行的開頭呢?可以^,如果到達該行的末尾呢?可以使用$。

插入模式

那麼正常模式如何插入呢?

一般我輸入i 鍵,然後會進入插入模式。insert 是進入替換模式。

會在當前游標的位置進行插入。

當使用shift+i的時候也就是大寫的I的時候,那麼游標會回到該行的最頭部。

同樣可以使用a進入插入模式,但是游標是在當前游標的下一位。

還可以使用A進入插入模式,那麼游標就在改行的最後一位。

還可以使用o進入插入模式,那麼游標會在下一行的頭部,並另外建立一行。

還可以使用O進入插入模式,那麼游標會在當前行建立一行。

命令模式

如果使用:,那麼可以進入命令模式。

:/w 進行儲存。:/q進行離開。:/q!強制離開。:x 如果修改了儲存退出,如果沒有修改直接退出。:X 為幫檔案進行密碼加密。

還有前文說的:set nu這樣就顯示了檔案的行資訊,如果不需要顯示行資訊可以使用:set nonu這樣子就可以。

這裡面還有一個非常強大的功能,可以使用:!這樣可以使用我們的shell命令,比如說:!ifconfig.

命令模式如何查詢呢?

可以使用:/進行查詢,比如說:/123,那麼就是查詢123。

那麼如果我們查詢到多個,如果檢視下一個呢?可以使用n。那麼又想上一個呢?可以使用shift+n。

那麼如何進行替換呢?可以使用:/s,比如:/s/123/456,這樣就是將123替換成456了。那麼這樣只會當前行的第一個進行替換,而不是全部行的第一個進行替換。

如果需要全部行的第一個進行替換,可以使用:%s/123/456這樣。

那麼如果想要全部進行替換呢?可以使用%s/123/456/g,加了一個/g。

如果只想再某幾行之間進行替換呢?比如說3到5行進行替換呢? 可以使用:/3,5s/123/456/g,這樣。

:數字 (移動到指定的行)

可視模式

在普通模式下按v,就可以進入可視模式,這時候是字元為單位選擇的。

進入可視模式後,可以按上下左右進行選擇。

如果我們按shift+v,這個時候是行為單位選擇模式。

如果我們按ctrl+v的模式,那麼就是塊為單位選擇模式。

塊選擇比較常見。

比如說希望在選擇的塊前面進行插入123。

可以按shift+i,然後進行輸入123,然後按shift。

同樣可以選擇指定的塊進行刪除。

比如說希望刪除選擇的塊,可以按d鍵進行刪除。

linux 樹

下一節檔案許可權。