?級版
目錄
1. 進入退出
進入命令示例 | 說明 |
vi | 進入vi編輯器,類似于打開window文本編輯器軟件 |
vi linuxLean.txt | 用vi編輯器打開 linuxLean.txt 文件 |
vi ? | 用vi編輯器打開 linuxLean.txt 文件,并且光標(biāo)定位在13行,? |
vi ? | 用vi編輯器打開 linuxLean.txt 文件,并且光標(biāo)定位在尾行 |
vi ? | 打開 linuxLean.txt 文件,光標(biāo)定位在第一次出現(xiàn)? |
退出命令示例 | 說明 |
w | 保存修改,但不退出 |
wq | 保存修改且退出 |
q | 退出,但文件有修改則報錯 |
q? | 強制退出,不保存任何修改 |
w ? | 保存文件為 ? |
w? | 保存文件為 ? |
2. 三種模式
命令模式(??按Esc鍵?
?),末行模式(??按: / ?鍵?
?),編輯模式(??按i a o鍵?
? ) 默認進入vi是命令模式
??i?
?在光標(biāo)當(dāng)前位置插入
??大寫I?
?在光標(biāo)當(dāng)前行??最左?
?邊插入
??a?
?在光標(biāo)當(dāng)前位置的后一個字符位置插入
??大寫A?
?在光標(biāo)當(dāng)前行??最右?
?邊插入
??o?
?在當(dāng)前行的??下?
?面插入新的一行
??大寫O?
?在當(dāng)前行的??上?
?面插入新的一行
3. 光標(biāo)移動
命令模式下:
- 按
hjkl
鍵 和 按方向鍵
都可以移動光標(biāo),h:向左,l:向右,j:向下,k:向上 -
ngg
調(diào)到n行
的行首 -
G
光標(biāo)定位最后一行的行首 -
nG
光標(biāo)定位到n行的行首 -
Ctrl+G
最底部顯示當(dāng)前光標(biāo)位置,一共多少行 -
0(數(shù)字零)
光標(biāo)移動到當(dāng)前行行首 -
$
光標(biāo)移動到當(dāng)前行的行尾
4. 文本修改
-
yy
復(fù)制當(dāng)前行(yank的首字母) -
nyy
復(fù)制當(dāng)前行及其后的n-1行, - 使用
小寫p鍵
來粘貼(paste)至光標(biāo)后面
- 使用
大寫P鍵
來粘貼(paste)至光標(biāo)前面
-
dd
刪除光標(biāo)所在行 -
ndd
刪除當(dāng)前行及其后的n-1行 - 按
u鍵
撤銷上一步操作 -
x
刪除光標(biāo)所在的字符
5. 查找替換
-
/要搜索的字符串
從光標(biāo)開始處向文件尾搜索,后按下n
下一個匹配出 -
s/p1/p2/g
將文件中所有的p1均用p2替換 -
s/p1/p2/cg
替換時需要確認 -
1,m s/p1/p2/g
從第1行到第m行,將文件中所有的p1均用p2替換 -
1,$ s/p1/p2/g
在整個文件內(nèi)容里面,將文件中所有的p1均用p2替換
s:substitute 替換 g:global 全局 c:confirm確認
文本命令說明: vi中的文本修改命令組成一般是 ??[光標(biāo)定位] [選擇文本] 修改?
?
示例如下:
- 刪除從當(dāng)前行開始的5行 ?
?修改?
?
5dd
- 在整個文本中替換aaaa為 bbbb ?
?選擇文本 修改?
?
1,$ s/aaaa/bbb/g
- 刪除從16行到20行的所有內(nèi)容 ?
?光標(biāo)定位 修改?
?
16G 5dd
- 將第3行至第7行的文本復(fù)制到第1行的行首 ?
?光標(biāo)定位 選擇文本 修改?
?
3G 5yy 1GP
6. 設(shè)置環(huán)境
常用的設(shè)置,命令行模式下
- ?
?set number 或 set nu?
? 顯示行號 - ?
?set nonumber?
? 隱藏行號 - ?
?set terse?
? 錯誤信息按照簡短的方式展示 - ?
?set report = n?
? 表示編輯影響n行以上則在狀態(tài)行上展示報告信息,n=0 表示每次編輯都展示報告