1. 進(jìn)入vi的命令
1)“vi filename” : 打開或編輯一個(gè)名為filename的文件,進(jìn)入命令模式
2)“vi +n filename ”:打開文件,并將光標(biāo)置于第n行首
3)“vi + filename ”:打開文件,并將光標(biāo)置于最后一行首
4)“vi +/pattern filename”:打開文件,并將光標(biāo)置于第一個(gè)與pattern匹配的串處
5)“vi -r filename” :在上次正用vi編輯時(shí)發(fā)生系統(tǒng)崩潰,恢復(fù)filename
6)“vi filename....filename ”:打開多個(gè)文件,依次進(jìn)行編輯
2.退出vi:
1) 命令模式下輸入 “:q!” :強(qiáng)制退出,不保存此次修改結(jié)果
2)命令模式下輸入 “:wq” :保存當(dāng)前內(nèi)容后退出
3.進(jìn)入命令模式 :
1)進(jìn)入vi時(shí)即為命令模式
2)從輸入模式下進(jìn)入方法 “ESC”
4. 進(jìn)入輸入模式
1)“i”: 進(jìn)入輸入模式并在光標(biāo)前插入文本
2)“I”: 進(jìn)入輸入模式并在當(dāng)前行首插入文本
3)“a”: 進(jìn)入輸入模式并在光標(biāo)后插入文本
4)“A”: 進(jìn)入輸入模式并在當(dāng)前行為尾插入文本
5)“o” :進(jìn)入輸入模式并在當(dāng)前行之下新開一行插入文本
6)“O” :進(jìn)入輸入模式并在當(dāng)前行之上新開一行插入文本
5.進(jìn)入最后一行模式
命令模式下輸入 “:”
6.刪除(要在命令模式下進(jìn)行)
1) “x” : 刪除光標(biāo)所在字符
2) “X” : 刪除光標(biāo)之前的一個(gè)字符
3) “dw” :刪除從光標(biāo)開始的一個(gè)單詞
4) “dd” :刪除光標(biāo)所在行
5)“do” :刪至行首
6)“d$” : 刪至行尾
7.在vi中執(zhí)行shell命令行(要在最后一行模式下進(jìn)行)
“:!command”
8.搜索(命令模式下進(jìn)行)
1)“fa” :搜索a在當(dāng)前行下一個(gè)所出現(xiàn)的位置
2)“Fa” :搜索a在當(dāng)前行上一個(gè)所出現(xiàn)的位置
3)“ta” :搜索a在下一個(gè)出現(xiàn)位置之前的字符
4)“Ta” :搜索a的上一個(gè)出現(xiàn)位置之后的字符
5)“;” :重復(fù)最近的一次搜索命令
6)“/pattern”:從光標(biāo)開始處向文件尾搜索pattern
7)“?pattern”:從光標(biāo)開始處向文件首搜索pattern
8)“n”:在同一方向重復(fù)上一次搜索命令
9)“N”:在反方向上重復(fù)上一次搜索命令
9.替換(最后一行模式下進(jìn)行)
1)“:s/p1/p2/g”:將當(dāng)前行中所有p1均用p2替代
2)“:n1,n2s/p1/p2/g”:將第n1至n2行中所有p1均用p2替代
3)“:g/p1/s//p2/g”:將文件中所有p1均用p2替換
10.替換(命令模式下進(jìn)行)
1)“r”替換當(dāng)前字符
2)“R”替換當(dāng)前字符及其后的字符,直至按ESC
11.移動(dòng)光標(biāo)(命令模式下進(jìn)行)
1)“h”:光標(biāo)左移一個(gè)字符
2)“l”:光標(biāo)右移一個(gè)字符
3)“space”:光標(biāo)右移一個(gè)字符
4)“Backspace”:光標(biāo)左移一個(gè)字符
5)“k”或“Ctrl+p”:光標(biāo)上移一行
6)“j”或“Ctrl+n”:光標(biāo)下移一行
7)“Enter” :光標(biāo)下移一行
8)“w”或“W” :光標(biāo)右移一個(gè)字至字首
9)“b”或“B” :光標(biāo)左移一個(gè)字至字首
10)“e”或“E”:光標(biāo)右移一個(gè)字至字尾
11)“)” :光標(biāo)移至句尾
12)“(” :光標(biāo)移至句首
13)“}”:光標(biāo)移至段落開頭
14)“{”:光標(biāo)移至段落結(jié)尾
15)“nG”:光標(biāo)移至第n行首
16)“n+”:光標(biāo)下移n行
17)“n-”:光標(biāo)上移n行
18)“n$”:光標(biāo)移至第n行尾
19)“H” :光標(biāo)移至屏幕頂行
20)“M”:光標(biāo)移至屏幕中間行
21)“L” :光標(biāo)移至屏幕最后行
22)“0”:(注意是數(shù)字零)光標(biāo)移至當(dāng)前行首
23)“$”:光標(biāo)移至當(dāng)前行尾
12. “ ~ ” :改變光標(biāo)所在字符的大小寫
13.“ . ” : 重復(fù)上一個(gè)操作
14.“ << ” :把當(dāng)前行移到左邊
15.“ >> ” :把當(dāng)前行移到右邊
16.給文件加鎖(最后一行模式下)
“:X” :在出現(xiàn)Enter key提示后輸入密碼。下次進(jìn)入該文件時(shí),格式
為“vi –x filename”,出現(xiàn)提示,輸入密碼即可。
17.簡(jiǎn)化輸入(最后一行模式下)
“:ab string strings” : 編輯時(shí)用string來代替strings
eg:“:ab rd Redstone Info” : 當(dāng)以后在文本中輸入“rd”并回車時(shí),“Redstone Info”就會(huì)出現(xiàn)代替rd
18.自定義鍵盤命令(最后一行模式下,比較危險(xiǎn),不建議使用)
“:map keys new_seq”
19.顯示行號(hào)(最后一行模式下,coding時(shí)很管用)
“:set number”顯示行號(hào)
20.用vi進(jìn)行coding時(shí)查找某個(gè)函數(shù)
首先在shell環(huán)境下用ctags命令對(duì)當(dāng)前目錄下的c原程序進(jìn)行掃描,生成tags文件
eg:$ ctags *.c
然后,在vi中可以通過命令“:ta fun_name”,就可以直接打開函數(shù)fun_name所在的文件,并將光標(biāo)置于函數(shù)開頭
21.插入文件(最后一行模式下)
“:r filename” :把文件filename插入到當(dāng)前文件的當(dāng)前位置中
22.直接跳轉(zhuǎn)(最后一行模式下)
“:n” : n為行數(shù),直接跳轉(zhuǎn)到第n行
23.行復(fù)制(最后一行模式下)
“:2,9 co 10” :將第2行到第9行的字copy到第11行(注意是第11行,不是第10行)
24.行剪切(最后一行模式下)
“:2,9 m 10” :將第2行到第9行的字move到第11行(注意是第11行,不是第10行)
posted on 2006-02-23 20:10
fanta 閱讀(2717)
評(píng)論(0) 編輯 收藏 所屬分類:
其他