Vi編輯器
一.簡介
Vi是Unix/Linux系統中最通用的文本編輯器,功能強大!!
使用vi能夠編輯Linux中的配置文件,甚至進行編程開發(shell腳本開發,C開發,Java開發)。
通過適當的配置vi還支持編程語言的語法加亮。
Linux下的vi編輯器,實際上是vi的增強版本,叫做vim,但是為了和Unix等系統兼容,linux下可以使用vi或者vim來打開vi編輯器。
二.基本應用
1. 如何打開編輯器
直接輸入vi,后回車即可。(會打開一個空文件,并且給出歡迎界面。這種方式打開vi時,當保存內容時需要給出文件名):
輸入vi filename (filename如果已存在,則打開此文件,反之則創建新文件,當保存后新文件才會寫入磁盤):
2.vi的運行模式切換
這是學習vi的重要部分。因為在vi中所有的命令和正文編輯都來自鍵盤輸入,如何區分輸入的字符時命令還是正文呢?依靠運行模式。
命令模式:此模式下鍵盤的輸入全都被認為是vi命令。
編輯模式:此模式下鍵盤的輸入全都被認為是文件正文。注意:ESC鍵除外。
當打開vi時,默認的模式是“命令模式”。
從命令模式切換到編輯模式(或插入模式):輸入適當的vi命令實現切換到編輯模式(a,A,i,I,o,O,s,S , r , R)
從編輯模式切換到命令模式:按下ESC鍵即可。
2. 保存退出類命令(在命令模式下,冒號也需要輸入)
保存:“:w”(write)
保存:“:w filename”
退出:“:q”(quit)
保存并退出:“:wq”
強制保存:“:w!”
不保存修改直接退出:“:q!”
以冒號開頭的命令又被成為末行指令(因為命令顯示在最后一行)
保存并退出:“:x”
保存并退出:“ZZ”(輸入時,按著shift鍵連按兩次z鍵即可。)
3.光標的定位
四個箭頭鍵
特殊的鍵盤命令:h,j,k,l(在命令模式下)
“
“$”(在命令模式下輸入$即可):光標移動到當前行行尾。
“H”(在命令模式下輸入H即可):光標移動到當前屏幕的最上邊行首。
“L”(在命令模式下輸入H即可):光標移動到當前屏幕的最下邊行首。
“nG”(在命令模式下輸入一個數字,時候輸入G即可):光標移動到數字所代表的行。
“n”(在命令模式下輸入一個數字即可):光標向下移動數字所代表的行數。
“n+space”(在命令模式下輸入一個數字,然后輸入空格鍵即可):光標向后移動數字所代表的字符數。
3. 查找與替換
“/keywords”:從當前光標位置向文件尾部查找指定的關鍵字。
“?keywords” 從當前光標位置向文件頭部查找指定的關鍵字。
查找過程中,可以使用“n”(與查找方向相同)和“N”(與查找方向相反)進行查找下一個。
替換:
“:1,$ s/sword/rword/g” :從第一行到最后一行進行替換。
4. 復制,刪除,粘貼
復制
“yy”:復制光標所在行。
“nyy”:復制光標所在行下的n行內容。
“p”:將已經復制的內容粘貼到光標所在行的下面一行。
“P”:將已經復制的內容粘貼到光標所在行的上面一行。
刪除
“dd”刪除光標所在行內容。
“ndd” 刪除光標所在行后的n行內容。
“x”刪除光標所在位置的字符
“X” 刪除光標所在位置到行尾地字符。
“nx”刪除光標位置后的n各字符。
“U”:撤銷對當前行的操作。
“u”撤銷上一步操作
5.其它有用的命令
“:set nu”(等價于“:set number”)顯示行號
“:set nonu” (等價于“:set nonumber”) 取消顯示行號
“:!command”不退出vi而執行shell命令,執行完后輸入回車后返回vi操作界面。
“:n1,n
“:e!”將文件還原到初始狀態