一文搞定Vim/Vi编辑器
1.Vi/Vim的工作模式介紹
2.命令模式
3.輸入模式
4.底線命令模式
1. Vi/Vim的工作模式介紹
命令模式:利用vi/vim [已經存在的文件或不存在的文件]就會默認的進入命令模式
輸入模式:我們想要在vim編輯器下進行插入數據的操作,那么就需要切換到此模式
末行模式:在末行模式可以輸入一些命令,比如保存退出等等
輸入模式不可以和底線命令模式相互轉換
2.命令模式
2.1 在命令模式下的常用指令
| h | 光標左移 |
| j | 光標上移 |
| k | 光標下移 |
| l | 光標右移 |
| 0 | 光標移動到本行行首 |
| $ | 光標移動到本行行尾 |
| gg | 移動到文件的頭處 |
| G | 移動到文件最后一行的開頭 |
| n+G | 跳轉n行 |
| x | 刪除光標前邊的一個字符 |
| n+x | 刪除 |
| X | 刪除光標后邊一個字符 |
| dw | (注意把光標移動到單詞的詞頭)刪除一個單詞 |
| d0 | 刪除本行光標前面的數據 |
| D(或者d加shift4) | 刪除本行光標后邊的數據 |
| dd | 刪除當前光標所在行 |
| n1,n2dd | 刪除指定范圍內的行數 |
| n+dd | 刪除從本行開始的n行 |
| u | 撤銷 |
| ctrl+r反撤銷 | |
| yy | 復制光標本行內容 |
| n+yy | 復制從本行開始后邊的n行 |
| P | 粘貼到光標的所在行(如果本行有內容那么把內容下移一行) |
| p | 粘貼到光標所在的小一行(如果下一行有內容那么把下一行再往下移動一行) |
| r | 光標覆蓋的字符可以更改(只是一個字符) |
| K | (光標放在該字符串上):可以查找函數等再man里邊的內容 |
| << | 向左縮進(前面可以跟數字) |
| >> | 向右縮進(前面可以加數字) |
| d+G | 刪除光標所在行一下的全部內容 |
命令模式下所有的刪除操作都可以看成剪切,比如我們用x進行剪切,那么p就可以粘貼剛才刪除的內容
2.2 在命令模式下的查找指令
| /+字符串 | 查找指定字符串內容 |
| ?+字符串 | 查找指定字符串內容 |
| # | 選定指定的字符串 |
三種查找方式都可以使用N/n進行遍歷
2.2 在命令模式下的可視化
在命令模式下輸入v進入可視化,進入可視化后的指令:
| y | 進入可視化操作后的復制 |
| d | 進入可視化操作的刪除 |
| P | 把復制的文本放在光標所在的位置 |
| p | 把復制的文本放在光標所覆蓋單詞后邊 |
3.輸入模式
進入輸入模式的方式:
| a | 在光標覆蓋的字符的后邊進行插入 |
| A | 把光標移動到本行尾部插入 |
| i | 在光標覆蓋字符前面插入 |
| I | 把光標移動到本行的頭部進行插入 |
| o | 在光標所處行的下一行開辟新的一行進行插入 |
| O | 在光標所處位置的上面一行進行插入 |
| s | 刪除光標所覆蓋的字符進行插入 |
| S | 刪除本行所有的字符再重新編輯本行 |
4.底線命令模式
4.1進出底線命令模式
1.輸入:進入底線命令模式
2.以回車退出底線命令模式
4.2底線命令模式的字符串的替換
| s/需要替換的字符串/新的字符串 | 只能替換光標所在行的第一個需要替換的字符串 |
| s/需要替換的字符串/新的字符串+/g | 替換所有光標所在行指定需要替換的字符串 |
| 數字+,+數字+s/需要替換的字符串/新的字符串+/g | 替換兩個數字之間的所有行數需要替換的字符串 |
4.2底線命令模式的保存退出
| q | 不保存退出 |
| w | 保存修改 |
| wq | 保存修改并退出 |
| ZZ | 保存修改并退出(快捷鍵) |
| wq! | 保存修改并退出(文件擁有者和root可以使用) |
4.3底線模式的分屏
| sp | 為當前文件水平分層(sp+其他文件) |
| vsp+ | 垂直分屏(vsp+其他文件) |
| ctrl+ww | 在兩個屏幕之間切換 |
| q | 分屏模式下退出光標所在的窗口 |
| qall | 分屏模式下把所有窗口都刪除掉 |
4.4底線命令模式的其他操作
1.r 指定文件名就可以把指定文件的內容導入進去
2.! +系統的命令:可以在不退出vi模式下使用系統命令
3.r !使用的指令:把當前用戶輸入指令的執行結果導入vim所在文件中
4.set nu:給打開的文本加上行號
5.map 一系類指令 :把一系列指令定義成快捷鍵
6.ab:意思是把a替換成b
對于第3個其實是我們前兩點的聯合,我們舉個例子,把ls的查詢結果導入vim所處的文件中
我們回車后,會把我們所查詢到的內容全部導入vim所在文件(從我們光標所在行開始添加)
10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ1NzM3MDY4,size_16,color_FFFFFF,t_70)
我們把第5個命令舉一個例子:
我們可以在命令模式下直接使用快捷鍵去注釋光標所在行,我們把ctrl+p作為這一個快捷鍵,正常的操作,我們需要把光標移動到頭部并進入插入模式,即命令I,插入一個#表示注釋,再然后按【Esc】回到命令模式,那么我們就可以這么定義,即在命令行模式下輸入:map (ctrl+v+p或者ctrl+v和ctrl+p) I#<ESC>
即(此時光標所在第二行):
我們回車后,在光標的任意一行都可以按下ctrl+p進行注釋的操作
我們設置快捷鍵的時候一定要有ctrl+v再加上我們需要設置的快捷鍵
關于第6點ab的意思是我們在底線命令行模式下可以設置字符的替換,比如我們把我們在文件里輸入的aa變成abccba,第一步,使用ab進行替換:
第二部在插入模式寫入aa
回車后
總結
以上是生活随笔為你收集整理的一文搞定Vim/Vi编辑器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 彻底掌握Linux文件与目录管理命令?进
- 下一篇: 详解Linux的压缩解压缩命令