VI 編輯器基本操作及快捷鍵

基本操作

1 進入vi

在系統(tǒng)提示符號輸入vi及文件名稱后师幕,就進入vi全屏幕編輯畫面:
 $ vi myfile
不過有一點要特別注意,就是您進入vi之后倔幼,是處于命令行模式(command mode)顷蟆,您要切換到插入模式(Insert mode)才能夠輸入文字。初次使用vi的人都會想先用上下左右鍵移動光標钉凌,結果電腦一直嗶嗶叫咧最,把自己氣個半死,所以進入vi后御雕,先不要亂動矢沿,轉換到插入模式(Insert mode)再說吧!

2酸纲, 切換至插入模式(Insert mode)編輯文件

命令行模式(command mode)下按一下字母i就可以進入插入模式(Insert mode)捣鲸,這時候你就可以開始輸入文字了。

3闽坡,Insert 的切換

您目前處于插入模式(Insert mode)栽惶,您就只能一直輸入文字,如果您發(fā)現(xiàn)輸錯了字疾嗅!想用光標鍵往回移動外厂,將該字刪除,就要先按一下ESC鍵轉到命令行模式(command mode)再刪除文字宪迟。

4酣衷,退出vi及保存文件

命令行模式(command mode)下,按一下 : 冒號鍵進入Last line mode次泽,例如:
: w filename (輸入 w filename將文章以指定的文件名filename保存)
: wq (輸入wq穿仪,存盤并退出vi)
: q! (輸入q!席爽, 不存盤強制退出vi)

4,命令行模式(command mode)功能鍵
1). 插入模式

i切換進入插入模式insert mode啊片,按"i"進入插入模式后是從光標當前位置開始輸入文件只锻;
  按a進入插入模式后,是從目前光標所在位置的下一個位置開始輸入文字紫谷;
  按o進入插入模式后齐饮,是插入新的一行,從行首開始輸入文字笤昨。

2). 從插入模式切換為命令行模式

ESC鍵祖驱。

3). 移動光標

vi可以直接用鍵盤上的光標來上下左右移動,但正規(guī)的vi是用小寫英文字母h瞒窒、j捺僻、kl崇裁,分別控制光標左匕坯、下、上拔稳、右移一格葛峻。
  按ctrl+b:屏幕往"后"移動一頁。
  按ctrl+f:屏幕往"前"移動一頁巴比。
  按ctrl+u:屏幕往"后"移動半頁术奖。
  按ctrl+d:屏幕往"前"移動半頁。
  按數(shù)字0:移到文章的開頭匿辩。
  按G:移動到文章的最后腰耙。
  按$:移動到光標所在行的"行尾"。
  按^:移動到光標所在行的"行首"
  按w:光標跳到下個字的開頭
  按e:光標跳到下個字的字尾
  按b:光標回到上個字的開頭
  按#l:光標移到該行的第#個位置铲球,如:5l,56l。

4). 刪除文字

x:每按一次晰赞,刪除光標所在位置的"后面"一個字符稼病。
  #x:例如,6x表示刪除光標所在位置的"后面"6個字符掖鱼。
  X:大寫的X然走,每按一次,刪除光標所在位置的"前面"一個字符戏挡。
  #X:例如芍瑞,20X表示刪除光標所在位置的"前面"20個字符。
  dd:刪除光標所在行褐墅。
  #dd:從光標所在行開始刪除#行

5). 復制

yw:將光標所在之處到字尾的字符復制到緩沖區(qū)中拆檬。
  #yw:復制#個字到緩沖區(qū)
  yy:復制光標所在行到緩沖區(qū)洪己。
  #yy:例如,6yy表示拷貝從光標所在的該行"往下數(shù)"6行文字竟贯。
  p:將緩沖區(qū)內的字符貼到光標所在位置答捕。注意:所有與"y"有關的復制命令都必須與"p"配合才能完成復制與粘貼功能。

6). 替換

r:替換光標所在處的字符屑那。
  R:替換光標所到之處的字符拱镐,直到按下ESC鍵為止。

7). 回復上一次操作

u:如果您誤執(zhí)行一個命令持际,可以馬上按下u沃琅,回到上一個操作。按多次"u"可以執(zhí)行多次回復蜘欲。

8). 更改

cw:更改光標所在處的字到字尾處
  c#w:例如阵难,c3w表示更改3個字

9). 跳至指定的行

ctrl+g列出光標所在行的行號。
  #G:例如芒填,15G呜叫,表示移動光標至文章的第15行行首。

5殿衰、Last line mode下命令簡介

在使用last line mode之前朱庆,請記住先按ESC鍵確定您已經處于command mode下后,再按冒號即可進入last line mode闷祥。

A) 列出行號

set nu:輸入set nu后娱颊,會在文件中的每一行前面列出行號。

B) 跳到文件中的某一行

##號表示一個數(shù)字凯砍,在冒號后輸入一個數(shù)字箱硕,再按回車鍵就會跳到該行了,如輸入數(shù)字15悟衩,再回車剧罩,就會跳到文章的第15行。

C) 查找字符

/關鍵字:先按/鍵座泳,再輸入您想尋找的字符惠昔,如果第一次找的關鍵字不是您想要的,可以一直按n會往后尋找到您要的關鍵字為止挑势。

?關鍵字:先按?鍵镇防,再輸入您想尋找的字符,如果第一次找的關鍵字不是您想要的潮饱,可以一直按n會往前尋找到您要的關鍵字為止来氧。

D) 保存文件

w:在冒號輸入字母w就可以將文件保存起來。

E) 離開vi

q:按q就是退出,如果無法離開vi啦扬,可以在q后跟一個!強制離開vi中狂。

qw:一般建議離開時,搭配w一起使用考传,這樣在退出的時候還可以保存文件吃型。

6、vi命令列表
1)僚楞、下表列出命令模式下的一些鍵的功能:

h
左移光標一個字符

l
右移光標一個字符

k
光標上移一行

j
光標下移一行

^
光標移動至行首

0
數(shù)字"0"勤晚,光標移至文章的開頭

G
光標移至文章的最后

$
光標移動至行尾

Ctrl+f
向前翻屏

Ctrl+b
向后翻屏

Ctrl+d
向前翻半屏

Ctrl+u
向后翻半屏

i
在光標位置前插入字符

a
在光標所在位置的后一個字符開始增加

o
插入新的一行,從行首開始輸入

ESC
從輸入狀態(tài)退至命令狀態(tài)

x
刪除光標后面的字符

#x
刪除光標后的#個字符

X
(大寫X)泉褐,刪除光標前面的字符

#X
刪除光標前面的#個字符

dd
刪除光標所在的行

#dd
刪除從光標所在行數(shù)的#行

yw
復制光標所在位置的一個字

#yw
復制光標所在位置的#個字

yy
復制光標所在位置的一行

#yy
復制從光標所在行數(shù)的#行

p
粘貼

u
取消操作

cw
更改光標所在位置的一個字

#cw
更改光標所在位置的#個字

2)赐写、下表列出行命令模式下的一些指令

w filename
儲存正在編輯的文件為filename

wq filename
儲存正在編輯的文件為filename,并退出vi

q!
放棄所有修改膜赃,退出vi

set nu
顯示行號

/?
查找挺邀,在/后輸入要查找的內容

n
與/或?一起使用,如果查找的內容不是想要找的關鍵字跳座,按n或向后(與/聯(lián)用)或向前(與?聯(lián)用)繼續(xù)查找端铛,直到找到為止。

對于第一次用vi疲眷,有幾點注意要提醒一下:
1禾蚕、用vi打開文件后,是處于命令行模式(command mode)狂丝,您要切換到插入模式(Insert mode)才能夠輸入文字换淆。切換方法:在命令行模式(command mode)下按一下字母i就可以進入插入模式(Insert mode),這時候你就可以開始輸入文字了几颜。
2倍试、編輯好后,需從插入模式切換為命令行模式才能對文件進行保存蛋哭,切換方法:按ESC鍵县习。
3、保存并退出文件:在命令模式下輸入:wq即可>咦场(別忘了wq前面的)

vi使用手冊
VI是unix上最常用的文本編輯工具准颓,作為unix軟件測試人員,有必要熟練掌握它棺妓。

進入vi的命令
vi filename :打開或新建文件,并將光標置于第一行首
vi +n filename :打開文件炮赦,并將光標置于第n行首
vi + filename :打開文件怜跑,并將光標置于最后一行首
vi +/pattern filename:打開文件,并將光標置于第一個與pattern匹配的串處
vi -r filename :在上次正用vi編輯時發(fā)生系統(tǒng)崩潰,恢復filename
vi filename…filename :打開多個文件性芬,依次編輯

移動光標類命令
h :光標左移一個字符
l :光標右移一個字符
space:光標右移一個字符
Backspace:光標左移一個字符
k或Ctrl+p:光標上移一行
j或Ctrl+n :光標下移一行
Enter :光標下移一行
w或W :光標右移一個字至字首
b或B :光標左移一個字至字首
e或E :光標右移一個字j至字尾
) :光標移至句尾
( :光標移至句首
}:光標移至段落開頭
{:光標移至段落結尾
nG:光標移至第n行首
n+:光標下移n行
n-:光標上移n行
n:光標移至第n行尾 H :光標移至屏幕頂行 M :光標移至屏幕中間行 L :光標移至屏幕最后行 0:(注意是數(shù)字零)光標移至當前行首:光標移至當前行尾

屏幕翻滾類命令
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b峡眶;向文件首翻一屏
nz:將第n行滾至屏幕頂部,不指定n時將當前行滾至屏幕頂部植锉。

插入文本類命令
i :在光標前
I :在當前行首
a:光標后
A:在當前行尾
o:在當前行之下新開一行
O:在當前行之上新開一行
r:替換當前字符
R:替換當前字符及其后的字符辫樱,直至按ESC鍵
s:從當前光標位置處開始,以輸入的文本替代指定數(shù)目的字符
S:刪除指定數(shù)目的行俊庇,并以所輸入文本代替之
ncw或nCW:修改指定數(shù)目的字
nCC:修改指定數(shù)目的行

刪除命令
ndw或ndW:刪除光標處開始及其后的n-1個字
do:刪至行首
d$:刪至行尾
ndd:刪除當前行及其后n-1行
x或X:刪除一個字符狮暑,x刪除光標后的,而X刪除光標前的
Ctrl+u:刪除輸入方式下所輸入的文本

搜索及替換命令 :
/pattern:從光標開始處向文件尾搜索pattern
?pattern:從光標開始處向文件首搜索pattern
n:在同一方向重復上一次搜索命令
N:在反方向上重復上一次搜索命令
:s/p1/p2/g:將當前行中所有p1均用p2替代
:n1,n2s/p1/p2/g:將第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g:將文件中所有p1均用p2替換

選項設置
all:列出所有選項設置情況
term:設置終端類型
ignorance:在搜索中忽略大小寫
list:顯示制表位(Ctrl+I)和行尾標志($)
number:顯示行號
report:顯示由面向行的命令修改過的數(shù)目
terse:顯示簡短的警告信息
warn:在轉到別的文件時若沒保存當前文件則顯示NO write信息
nomagic:允許在搜索模式中辉饱,使用前面不帶“\”的特殊字符
nowrapscan:禁止vi在搜索到達文件兩端時搬男,又從另一端開始
mesg:允許vi顯示其他用戶用write寫到自己終端上的信息

最后行方式命令
:n1,n2 co n3:將n1行到n2行之間的內容拷貝到第n3行下
:n1,n2 m n3:將n1行到n2行之間的內容移至到第n3行下
:n1,n2 d :將n1行到n2行之間的內容刪除
:w :保存當前文件
:e filename:打開文件filename進行編輯
:x:保存當前文件并退出
:q:退出vi
:q!:不保存文件并退出vi
:!command:執(zhí)行shell命令command
:n1,n2 w!command:將文件中n1行至n2行的內容作為command的輸入并執(zhí)行之难礼,若不指
定n1傻铣,n2,則表示將整個文件內容作為command的輸入
:r!command:將命令command的輸出結果放到當前行 冰悠。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末姓惑,一起剝皮案震驚了整個濱河市褐奴,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌于毙,老刑警劉巖敦冬,帶你破解...
    沈念sama閱讀 211,265評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異望众,居然都是意外死亡匪补,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,078評論 2 385
  • 文/潘曉璐 我一進店門烂翰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來夯缺,“玉大人,你說我怎么就攤上這事甘耿∮欢担” “怎么了?”我有些...
    開封第一講書人閱讀 156,852評論 0 347
  • 文/不壞的土叔 我叫張陵佳恬,是天一觀的道長捏境。 經常有香客問我,道長毁葱,這世上最難降的妖魔是什么垫言? 我笑而不...
    開封第一講書人閱讀 56,408評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮倾剿,結果婚禮上筷频,老公的妹妹穿的比我還像新娘蚌成。我一直安慰自己,他們只是感情好凛捏,可當我...
    茶點故事閱讀 65,445評論 5 384
  • 文/花漫 我一把揭開白布担忧。 她就那樣靜靜地躺著,像睡著了一般坯癣。 火紅的嫁衣襯著肌膚如雪瓶盛。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,772評論 1 290
  • 那天示罗,我揣著相機與錄音惩猫,去河邊找鬼。 笑死鹉勒,一個胖子當著我的面吹牛帆锋,可吹牛的內容都是我干的。 我是一名探鬼主播禽额,決...
    沈念sama閱讀 38,921評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼锯厢,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了脯倒?” 一聲冷哼從身側響起实辑,我...
    開封第一講書人閱讀 37,688評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎藻丢,沒想到半個月后剪撬,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 44,130評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡悠反,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,467評論 2 325
  • 正文 我和宋清朗相戀三年残黑,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片斋否。...
    茶點故事閱讀 38,617評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡梨水,死狀恐怖,靈堂內的尸體忽然破棺而出茵臭,到底是詐尸還是另有隱情疫诽,我是刑警寧澤,帶...
    沈念sama閱讀 34,276評論 4 329
  • 正文 年R本政府宣布旦委,位于F島的核電站奇徒,受9級特大地震影響,放射性物質發(fā)生泄漏缨硝。R本人自食惡果不足惜摩钙,卻給世界環(huán)境...
    茶點故事閱讀 39,882評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望查辩。 院中可真熱鬧腺律,春花似錦奕短、人聲如沸宜肉。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,740評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽谬返。三九已至之斯,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間遣铝,已是汗流浹背佑刷。 一陣腳步聲響...
    開封第一講書人閱讀 31,967評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留酿炸,地道東北人瘫絮。 一個月前我還...
    沈念sama閱讀 46,315評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像填硕,于是被迫代替她去往敵國和親麦萤。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,486評論 2 348

推薦閱讀更多精彩內容

  • vi(vim)可以說是linux中用得最多的工具了扁眯,不管你配置服務也好壮莹,寫腳本也好,總會用到它姻檀。但是命满,vim作為一...
    梁世勇閱讀 1,568評論 2 12
  • 官網 中文版本 好的網站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,370評論 0 5
  • vi編輯器是所有Unix及Linux系統(tǒng)下標準的編輯器,它的強大不遜色于任何最新的文本編輯器绣版,這里只是簡單地介紹一...
    Coder_Duddley閱讀 582評論 0 0
  • vi使用方法詳細介紹 vi編輯器是所有Unix及Linux系統(tǒng)下標準的編輯器胶台,它的強大不遜色于任何最新的文本編輯 ...
    Michael_林閱讀 820評論 0 8
  • 怪我怪我咯閱讀 207評論 0 0