區別:1、vi中按u只能撤消上次命令,而vim中可以無限制的撤消命令;2、vi只能執行於unix中,而vim可以執行於多種操作平臺;3、vim中有語法加亮功能,vi中沒有;4、vi支援3個模式,而vim支援4個模式等。
本教學操作環境:CentOS 6系統、Dell G3電腦。
它們都是多模式編輯器,不同的是vim 是vi的升級版本,它不僅相容vi的所有指令,而且還有一些新的特性在裡面。
vim的這些優勢主要體現在以下幾個方面:
1、多級撤消
我們知道在vi裡,按u只能撤消上次命令,而在vim裡可以無限制的撤消。
2、易用性
vi只能執行於unix中,而vim不僅可以執行於unix,windows ,mac等多操作平臺。
3、語法加亮
vim可以用不同的顏色來加亮你的程式碼。
4、視覺化操作
就是說vim不僅可以在終端執行,也可以執行於x window、 mac os、 windows。
5、對vi的完全相容
某些情況下,你可以把vim當成vi來使用。
vi和vim都是Linux中的編輯器,不同的是vim比較高階,可以視為vi的升級版本。vi適用於文字編輯,但是vim更適用於coding。
VI模式
vi有3個模式:命令列模式 (command mode/一般模式)、文字輸入模式 (input mode/編輯模式)、末行模式 (last line mode/指令列命令模式)。
命令列模式 (command mode/一般模式)
任何時候,不管使用者處於何種模式,只要按一下「ESC」鍵,即可使Vi進入命令列模式;我們在shell環境(提示符為$)下輸入啟動Vi命令,進入編輯器時,也是處於該模式下。
在該模式下,使用者可以輸入各種合法的Vi命令,用於管理自己的檔案。此時從鍵盤上輸入的任何字元都被當做編輯命令來解釋,若輸入的字元是合法的Vi命令,則Vi在接受使用者命令之後完成相應的動作。但需注意的是,所輸入的命令並不在螢幕上顯示出來。若輸入的字元不是Vi的合法命令,Vi會響鈴報警。
文字輸入模式 (input mode/編輯模式)
在命令模式下輸入插入命令i(insert)、附加命令a (append)、開啟命令o(open)、修改命令c(change)、取代命令r或替換命令s都可以進入文字輸入模式。在該模式下,使用者輸入的任何字元都被Vi當做檔案內容儲存起來,並將其顯示在螢幕上。在文字輸入過程中,若想回到命令模式下,按」ESC」鍵即可。
末行模式 (last line mode/指令列命令模式)
末行模式也稱ex跳脫模式。
Vi和Ex編輯器的功能是相同的,二者主要區別是使用者介面。在Vi中,命令通常是單個鍵,例如i、a、o等;而在Ex中,命令是以按確認鍵結束的正文行。Vi有一個專門的「跳脫」命令,可存取很多面向行的Ex命令。
在命令模式下,使用者按「:」鍵即可進入末行模式下,此時Vi會在顯示視窗的最後一行(通常也是螢幕的最後一行)顯示一個「:」作為末行模式的提示符,等待使用者輸入命令。多數檔案管理命令都是在此模式下執行的(如把編輯緩衝區的內容寫到檔案中等)。末行命令執行完後,Vi自動回到命令模式。
VIM模式
vim一共有4個模式:
正常模式 (Normal-mode)
插入模式 (Insert-mode)
命令模式 (Command-mode)
可視模式 (Visual-mode)
正常模式
啟動vim後預設處於正常模式。不論位於什麼模式,按下<Esc>
鍵(有時需要按兩下)都會進入正常模式。
插入模式
在正常模式中按下i, I, a, A等鍵,會進入插入模式。
現在只用記住按i鍵會進行插入模式。在插入模式中,擊鍵時會寫入相應的字元。
命令模式
在正常模式中,按下:(英文冒號)鍵,會進入命令模式。
在命令模式中可以執行一些輸入並執行一些vim或外掛提供的指令,就像在shell裡一樣。這些指令包括設定環境、檔案操作、呼叫某個功能等等。
常用的命令有:q(退出)、q!(強制退出)、w(儲存)、wq(儲存並退出)。
可視模式
在正常模式中按下v, V, <Ctrl>+v
,可以進入可視模式。
可視模式中的操作有點像拿滑鼠進行操作,選擇文字的時候有一種滑鼠選擇的即視感,有時候會很方便。
相關推薦:《Linux視訊教學》
以上就是linux vi與vim的區別是什麼的詳細內容,更多請關注TW511.COM其它相關文章!