按此前往linux完整教學目錄
※ 前註:
本篇中,<>是鍵盤按鍵的意思,如<ctrl>代表ctrl鍵,<enter>代表enter鍵,<a>代表英文字母a那個按鍵。
此外,大小寫也要注意。<a>即是按下小寫狀態的a鍵,<A>即是按下大寫狀態的a鍵。
<按鍵1>+<按鍵2>,表示按住按鍵1不放,接著再按住按鍵2的按法。
<按鍵1><按鍵2>,表示按下按鍵1後放掉,接著再按下按鍵2的按法。
1. vim,是linux中常用的文書編輯器。使用vim建立一個文字檔案,或開啟一個已存在的文字檔案,其用法為:
vim 檔案名稱
如:vim vtest1.txt。
在使用vim開啟檔案之後會進入一個黑色背景的畫面,以顯示出內容文字。要注意,在這個黑色背景畫面之中,除最後一行之外都是內容文字。而最後一行是vim用來提示使用者一些訊息(譬如行數)的訊息框、也是提供使用者輸入命令的命令列。
2. vim的操作:
當使用者開啟或建立一個文字檔後、進入黑色背景畫面後,使用者可以透過鍵盤按鍵來移動游標、移動頁面,亦可對內容文字進行複製、刪除、貼上…等操作。說明如下:
(1) 移動游標:
※ <↑>:游標往上。<k>也可使游標往上。
※ <↓>:游標往下。<j>也可使游標往下。
※ <←>:游標往左。<h>也可使游標往左。
※ <→>:游標往右。<l>也可使游標往右。
※此外,亦有組合按鍵。即利用鍵盤左方的數字鍵(不是鍵盤右方的數字鍵盤)輸入數字,再按方向鍵,其效果等於執行此方向鍵多次。例如:<1><0><0><↓>,會使游標往下100行。又如:<2><0><→>,會使游標往右20格。
※ <ctrl>+<f>:游標往下(也就是往前)移動一整頁。<page down>也有此功能。
※ <ctrl>+<b>:游標往下(也就是往後)移動一整頁。<page up>也有此功能。
※ <0>:將游標移到當前行內最開頭(也就是最左邊)的字元。<home>也有此功能。
※ <$>:將游標移到當前行內最末尾(也就是最右邊)的字元。<end>也有此功能。
※ <G>:將游標移動到整個檔案最後一行、最開頭的字元。
※此外,亦有組合按鍵。即利用鍵盤左方的數字鍵(不是鍵盤右方的數字鍵盤)輸入數字,再按<G>,其效果等於將游標移至某一行。例如:<1><0><0><G>,會使游標移到本檔案的第100行。
※ <g><g>:將游標移動到整個檔案第一行、最開頭的字元。
(2) 內容文字的刪除、複製、貼上:
※ <x>:刪除游標目前所在的字元。
※ <d><d>:刪除游標目前所在的那一行。
※亦有組合按鍵。如:數字<d><d>,可以刪除多行文字。如<5><d><d>,會以游標所在那一行為第1行,連續往下刪除5行。
※ <d><1><G>:將「檔案開頭字元、游標所在字元之間的字元」給刪除。
※ <d><G>:將「游標所在字元、到檔案最後字元之間的字元」給刪除。
※ <d><$>:將「游標所在字元、到該行最後字元之間的字元」給刪除。
※ <y><y>:將游標目前所在的那一行給複製下來。
※亦有組合按鍵。如:數字<y><y>,可以複製多行文字。如<5><d><d>,會以游標所在那一行為第1行,連續往下複製5行。
※ <y><1><G>:將「檔案開頭字元、游標所在字元之間的字元」給複製。
※ <y><G>:將「游標所在字元、到檔案最後字元之間的字元」給複製。
※ <y><$>:將「游標所在字元、到該行最後字元之間的字元」給複製。
※ <P>:將複製的檔案,在當前游標處貼上。
(3) 內容文字的選擇、選擇後操作:
※ <v>:按下<v>之後移動游標,將游標經過的字元選擇起來,被選擇的字元會反白。若要取消選取,可按<esc>。
※ <V>:按下<V>之後移動游標,將游標經過的字元選擇起來,被選擇的字元會反白。若要取消選取,可按<esc>。
※ <ctrl>+<v>:按下<ctrl>+<v>之後移動游標,以當前游標位置與初始游標位置當作舉行的對角頂點,將此矩形內包含的字元選擇起來,被選擇的字元會反白。若要取消選取,可按<esc>。
※ <y>:將所選取的內容給複製。
※ <d>:將所選取的內容給刪除。
(4) 動作的還原與重作:
在此,所謂的「動作」,可以是指上述所有按法的任何一種。
※ <u>:將最近一次動作的效果給取消,讓該文件回到沒做此動作前的狀態。亦稱為對動作的「還原」。
※ <ctrl>+<r>:若已經對動作進行還原,則此按法會重做此次動作,也是就會讓該文件到做了此動作之後的狀態。
(5) 進入編輯模式:
※ <i>:進入編輯模式以插入文字。在此模式下,vim螢幕中的最後一行會顯示「-- INSERT --」字樣。只有在此模式中,才可以在文件上直接打字。此外,<I>也有同樣功能。若要從編輯模式中退出、回到原先的模式,請按<esc>。
(6) 進入指令模式:
所謂指令模式,就是可以輸入指令來達成某些功能。使用者輸入的指令,會被顯示在vim螢幕中的最後一行上,輸入完畢後按<enter>即可執行,且離開指令模式。在這個指令模式中,可以進行內容文字的搜尋、取代,以及檔案的儲存…等。進入指令模式有三種方法,按下<:>、或按下</>、或按下<?>即可。進入指令模式後可以直接輸入指令,說明如下:
(6-1) 內容文字的搜尋:</>字串<enter>
可搜尋內容文字中,是否有該字串。如:</>make<enter>可搜尋內容文字中,是否有「make」這個字串,並在螢幕上顯示出來。<?>字串<enter>也有相似的功能。
(6-2) 內容文字的取代:<:>數字一,數字二s/字串1/字串2/g<enter>
可將檔案中,行數為數字一到數字二的內容文字中,字串一給取代為字串二。如:<:>2,6s/a/A/g<enter>表示將2到6行中的小寫a給取代為大寫A。注意,數字2也可以為$,表示最後一行。如:
<:>2,$s/a/A/g<enter>表示將2到最後一行中的小寫a給取代為大寫A。
(6-3) 儲存檔案:<:>w<enter>
(6-4) 在唯獨檔中強制儲存檔案:<:>w! <enter>
(6-5) 關閉vim:<:>q! <enter>
(6-6) 儲存檔案後關閉vim:<:>wq<enter>
(6-7) 另存新檔:<:>w 新檔案名稱<enter>
(6-8) 讀取某個檔案,並將讀取的結果顯示在當前檔案之中、當前游標位置:
<:>r 檔案名稱<enter>
(6-9) 顯示內容行號:<:>set nu<enter>
(6-10) 取消顯示內容行號:<:>set nonu<enter>
(6-11) 顯示目前vim的環境設定為何:<:>set all<enter>。如上述行號內容的顯示與否,就是一種環境設定。事實上,這些所謂的環境設定,可以在命令模式內由使用者自行設定(就如上述設定行號的顯示與否一樣)。此外,在顯示環境設定之後要回到vim,按下<q>即可。
(6-12) 若要不執行指令就離開指令模式,按下<esc>即可。
上一篇:bash 管線符號
下一篇:vim教學 開啟多檔案