在linux和unix系統上(windows也可以), 如果我們能熟練掌握vim, 那麼我們做起東西來一定可以事半功倍, 提高效率. 這些命令一定要經常使用, 才能熟能生巧.
什麼是vim
vim是從 vi 發展出來的乙個文字編輯器。**補完、編譯及錯誤跳轉等方便程式設計的功能特別豐富,在程式設計師中被廣泛使用。
簡單的來說, vi 是老式的字處理器,不過功能已經很齊全了,但是還是有可以進步的地方。 vim 則可以說是程式開發者的一項很好用的工具。
連 vim 的官方** ( 自己也說 vim 是乙個程式開發工具而不是文字處理軟體。
下面這個圖很重要,可能初學暫時看不懂, 等明白了vim的一些命令的含義就能看懂這幅圖了
vim鍵盤圖
vim的使用
基本上 vi/vim 共分為三種模式,分別是命令模式(command mode),插入模式(insert mode)和底線命令模式(last line mode)。 這三種模式的作用分別是:
命令模式:
使用者剛剛啟動 vi/vim,便進入了命令模式。
此狀態下敲擊鍵盤動作會被vim識別為命令,而非輸入字元。比如我們此時按下i,並不會輸入乙個字元,i被當作了乙個命令。
以下是常用的幾個命令:
- i 切換到插入模式,以輸入字元。
- x 刪除當前游標所在處的字元。
- : 切換到底線命令模式,以在最底一行輸入命令。
命令模式只有一些最基本的命令,因此仍要依靠底線命令模式輸入更多命令
插入模式
在命令模式下按下i就進入了輸入模式。
在輸入模式中,可以使用以下按鍵:
字元按鍵以及shift組合,輸入字元
enter,回車鍵,換行
back space,退格鍵,刪除游標前乙個字元
del,刪除鍵,刪除游標後乙個字元
方向鍵,在文字中移動游標
home/end,移動游標到行首/行尾
page up/page down,上/下翻頁
insert,切換游標為輸入/替換模式,游標將變成豎線/下劃線
esc,退出輸入模式,切換到命令模式
注意: 在mac電腦的鍵盤上沒有home, end, page up, page down這些鍵,可以通過用fn鍵來組合得到同樣的功能:home鍵=fn+左方向、end鍵=fn+右方向、pageup=fn+上方向、pagedown=fn+下方向、向前delete=fn+delete鍵
底線命令模式
在命令模式下按下:(英文冒號)就進入了底線命令模式。
底線命令模式可以輸入單個或多個字元的命令,可用的命令非常多。
在底線命令模式中,基本的命令有(已經省略了冒號):
q 退出程式
w 儲存檔案
按esc鍵可隨時退出底線命令模式。
簡單的說,我們可以將這三個模式想成底下的圖示來表示:
三者關係
使用例項
使用 vi/vim 進入一般模式
如果你想要使用 vim 來建立乙個名為 test.txt 的檔案時,你可以這樣做:
vim runoob.txt
直接輸入 vim 檔名 就能夠進入 vim 的一般模式了。請注意,記得 vi 後面一定要加檔名,不管該檔案存在與否!
image.png
按下 i 進入輸入模式(也稱為編輯模式),開始編輯文字
在一般模式之中,只要按下 i, o, a 等字元就可以進入輸入模式了!
在編輯模式當中,你可以發現在左下角狀態列中會出現 –insert- 的字樣,那就是可以輸入任意字元的提示。
這個時候,鍵盤上除了 esc 這個按鍵之外,其他的按鍵都可以視作為一般的輸入按鈕了,所以你可以進行任何的編輯。
image.png
按下 esc 按鈕回到一般模式
好了,假設我已經按照上面的樣式給他編輯完畢了,那麼應該要如何退出呢?是的!沒錯!就是給他按下 esc 這個按鈕即可!馬上你就會發現畫面左下角的 – insert – 不見了!
在一般模式中按下 :wq 儲存後離開 vim
ok,我們要存檔了,存檔並離開的指令很簡單,輸入 :wq 即可儲存離開!
image.png
ok! 這樣我們就成功建立了乙個 runoob.txt 的檔案。
vi/vim 按鍵說明
上面的都是基礎, 接下來的才是需要熟練掌握的
除了上面簡易範例的 i, esc, :wq 之外,其實 vim 還有非常多的按鍵可以使用。
第一部份:一般模式可用的游標移動、複製貼上、搜尋替換等
image.png
image.png
image.png
image.png
image.png
命令模式下
d 刪除行 y複製 p貼上 g移動行 0行首 $行尾 m中行 l尾行 gg首行 dd刪除當前行 yy複製當前行
u回退 x刪除字元 n行內字元跳轉 j合併兩行
vim命令模式和底線 VIM 底線命令模式
儲存檔案 w 小寫 儲存檔案 wq 小寫 儲存並退出vim w 檔名1 將檔案另存為檔名1 zz 大寫 儲存檔案並退出,相當於 wq wq 小寫 檔案所有者強制儲存唯讀檔案,如果不是檔案所有者進行此操作,不能成功 q 退出不儲存檔案 顯示行號 set nu mber 顯示行號 set nonu 取消...
vim命令模式和底線 Vim 的三種模式
引用 vim和vi一樣具有三種模式 命令模式 command mode 插入模式 insert mode 和底線命令模式 last line mode 當使用者處於不同模式的時候,敲擊鍵盤會產生不同的作用。命令模式 使用者剛剛啟動vim,便進入了命令模式。此狀態下敲擊鍵盤動作會被vim識別為命令,而...
vim命令模式和底線 Linux基礎命令總結
1 常用工具 win xshell winscp mac iterm 2 目錄和檔案命令 1 使用者目錄 位於 home user,2 ls 是英文單詞list的簡寫,其功能為列出目錄的內容 ls a 列出隱藏檔案 ls l 列出檔案的詳細資訊 ls r 連同子目錄中的內容起列出 3 cd 使用 c...