$ Vi filename 或者$ Vi
若是filename已經存在,Vi會打開現存文件
若是是一個新文件,Vi會建立它編輯器
在命令行模式下輸入:q,:q!,:wq或者:x,能夠退出Vi
:w 保存
:w filename 另存爲filename
:wq! 保存並退出
:wq! filename 以filename爲文件名保存後退出
:q! 不保存退出
:x 保存並退出,功能和:wq!相同命令行
Vi有三種工做模式,分別爲:命令模式、插入模式(編輯模式)和末行模式,三種模式分別進行不一樣的操做,它們之間能夠進行切換。字符串
一、移動光標
h或者向左方向鍵:光標向左移動一個字符
l或者向右方向鍵:光標向右移動一個字符
k或者向上方向鍵:光標向上移動一個字符
j或者向下方向鍵:光標向下移動一個字符
【Ctrl】+f: 屏幕「向下」移動一頁,至關於【PageDown】
【Ctrl】+b: 屏幕「向上」移動一頁,至關於【PageUp】
0: 數字0,移動到這一行的最前面一個字符處
$: 移動到這一行的最後一個字符處
G: 移動到這個文件的最後一行
gg: 移動到這個文件的第一行
n【Enter】: n是一個數字,光標向下移動n行
二、搜索與替換
/str:從光標開始,向下尋找一個名爲str的字符串。
?str:從光標開始,向上尋找一個名爲str的字符串。
:n1,n2s/str1/str2/g:n1與n2爲數字,在第n1行與n2行之間尋找str1 這個字符串,並將該字符串替換成str2
:1,$s/str1/str2/g:從第一行到最後一行尋找str1字符串,並將該字符 串替換爲str2
:1,$s/str1/str2/gc:從第一行到最後一行尋找str1字符串,並將該字 符串替換爲str2,且在替換前提示符給用戶確認 是否須要替換
三、刪除、複製與粘貼
x,X:x爲向後刪除一個字符,X爲向前刪除一個字符
nx:n爲數字,爲連續向後刪除n個字符
dd:刪除光標所在的那一整行
ndd:n爲數字,從光標位置開始,刪除向下n列,如20dd則是刪除20列。
yy:複製光標所在的那一行
nyy:n爲數字,複製光標所在的向下n行,如20yy則是複製20行
p,P:p爲將複製的數據粘貼到光標的下一行,P則爲粘在光標的上一行。
u:復原前一個操做
【Ctrl】+r:重作上一個操做
.:小數點,重複前一個動做,經常使用在重複刪除、重複粘貼。
四、插入模式
i,I:插入:在當前光標所在處插入輸入文字,已存在的文字會向後 退,其中i爲從當前光標所在位置前開始插入,I將光標移到當前 行的行首,而後開始插入。
a,A:a爲從當前光標所在的下一個字符開始插入,A爲從光標所在行的 最後一個字符處開始插入
o,O:這是英文字母o的大小寫,o爲在當前光標所在的下一行插入新的 一行,O爲在當前光標所在處的上一行插入新的一行。
r,R:替換:r爲替換光標所在的那一個字符;R會一直替換光標所在的 文字,直到安下【Esc】鍵爲止。
五、文件操做相關
:w:保存文件
:w filename:另存爲filename
:n1,n2 w filename!:將n1行到n2行的內容保存到filename中
:n w filename:將第n行保存到filename中
:l,. w filename:將從第一行起到光標當前位置的內容保存到 filename中
:.,$ w filename:將從光標當前位置到文件結束的內容保存到 filename中
:r filename:打開另一個文件filename
:e filename:編輯新文件filename代替原有內容
:f filename:把當前文件更名爲filenamefile