vi/vim
是Linux命令行界面下的文字編輯器,幾乎全部的Linux系統都安裝了vi,只要學會了vi這個編輯工具,就能夠在任何Linux系統上使用它。而vim是vi命令的加強版(Vi IMproved),與vi編輯器徹底兼容,此外還有不少加強功能,例如用不一樣顏色高亮顯示代碼。所以,若是系統有vim命令,那麼建議你們就使用vim編輯文本。
vim的三種模式
通常來講,vim可分爲三種模式:普通模式、編輯模式、命令模式。這三種模式的做用分別以下。
(1)普通模式
用vim命令打開一個文件,默認的狀態就是普通模式。在這個模式中,不能進行編輯輸入操做,但能夠按「上下左右」鍵來移動光標,也能夠執行一些操做命令進行如刪除、複製、粘貼等之類的工做。
(2)編輯模式
在普通模式下不能進行編輯輸入操做,只有按下「i,I,o,O,a,A,r,R,s,S」(其中「I」最經常使用)等字母進入編輯模式以後才能夠執行錄人文字等編輯操做。看文件是否處於編輯模式狀態有一個重要的特徵,那就是在窗口的左下角要有插入的標記「--INSERT--」或「--插入--」
(3)命令模式
在普通模式下,輸入「:」或「/」或「?」時,光標會自動定位在那一行,在這個模式中,能夠執行保存、退出、搜索、替換、顯示行號等相關操做。
vim命令的參數選項及說明
普通模式:移動光標的操做
G或(shift+g) 將光標移動到文件的最後一行
gg 將光標移動到文件的第一行,等價於1gg或1G
0 數字0,將光標從所在位置移動到當前行的開頭
$ 從光標所在位置將光標移動到當前行的結尾
n<Enter> n爲數字,<Enter>爲回車鍵,將光標從當前位置向下移動n行
ngg n爲數字,移動到文件的第n行,如11gg可移動到第11行,可配合「:setnu」查看,同nG
H 光標移動到當前窗口最上方的那一行
M 光標移動到當前窗口中間的那一行
L 光標移動到當前窗口最下方的那一行
h或() 光標向左移動一個字符
j或() 光標向下移動一個字符
k或() 光標向上移動一個字符
l或(→) 光標向右移動一個字符
普通模式:搜索與替換操做
/lewen 從光標位置開始,向下尋找名爲lewen的字符串
?lewen 從光標位置開始,向上尋找名爲lewen的字符串
n 從光標位置開始,向下重複前一個搜索的動做
N 從光標位置開始,向上重複前一個搜索的動做
:%s/A/B/g 把符合A的內容所有替換爲B,斜線爲分隔符,能夠用@、#等替代
:n1,n2s/A/B/g n一、n2爲數字,在第n1行和n2行之間尋找A,用B替換
普通模式:複製、粘貼、刪除等操做
yy 複製光標所在的當前行
nyy n爲數字,複製光標開始向下共n行
p/P p將已複製的數據粘貼到光標的下一行,P則爲粘貼到光標的上一行
dd 刪除光標所在的當前行
ndd n爲數字,刪除從光標開始向下共n行
u 恢復(回滾)前一個執行過的操做
. 點號。重複前一個執行過的動做
x 向後刪除字符
X 向前翻除字符
d1G 刪除當前行至第一行
dG 刪除當前行至最後一行
d0 刪除當前光標文本至行首
d$ 刪除當前光標文本至行尾
進入編輯模式命令
i 在當前光標所在處插入文字
a 在當前光標所在的下一個字符處插入文字
I 在當前所在行行首的第一個非空格符處開始插入文字,和A相反
A 在當前所在行行尾的最後一個字符處開始插入文字,和l相反
O 在當前所在行的上一行處插入新的一行
o 在當前所在行的下一行處插入新的一行
Esc 退出編輯模式,回到命令模式中
命令行模式
:wq 退出並保存
:wq! 退出並強制保存,「!」爲強制的意思
:q! 強制退出,不保存
:n1,n2 w filename n一、n2爲數字,將n1行到n2行的內容保存成filename這個文件
:nl,n2 co n3 nl、n2爲數字,將nl行到n2行的內容複製到n3位置下
:n1,n2 m n3 nl、n2爲數字,將n1行到n2行的內容剪切至n3位置下
:!command 暫時離開vi到命令行模式下執行command的顯示結果!例如:!ls /etc
:set nu 顯示行號
:set nonu 與setnu相反,取消行號
:vs filename 垂直分屏顯示,同時顯示當前文件和filename對應文件的內容
:sp filename 水平分屏顯示,同時顯示當前文件和filename對應文件的內容
I + # + Esc 在可視塊模式下(Ctrl+V),一次性註釋所選的多行,取消註釋可用「:nl,n2s/#//g」,這裏的操做是一個通用的方法,#號能夠換成別的操做,例如Tab鍵,這樣就是批量縮進
Del 在可視塊模式下(Ctrl+V),一次性刪除所選內容
r 在可視塊模式下(Ctrl+V),一次性替換所選內容.輸入r,再輸入替換成的字符
vim打開文件的方法小結
如下爲vim打開文件的幾種方法。
vim file:打開/新建文件,光標置於第1行行首,file爲任意文件名。
vim file +n:打開文件,光標置於第n行行首,n爲天然數。 #eg: vim test.txt +4
vim file +:打開文件,光標置於最後1行行首。
vim file +/pattern:將光標置於第一個與pattern匹配的字符串處,pattern爲任意字符串。