標籤:vim
vim編輯器
文字編輯器,文書處理器
nano、sed
vi:Visual Interface(可視化介面)
vim:VI Improved
模式編輯器、全屏編輯器
一:開啟檔案
# vim /path/to/somefile
vim +# /path/to/somefile 開啟/path/to/somefile,並定位於檔案第#行
vim + /path/to/somefile 開啟/path/to/somefile,並定位於該檔案的底部
vim +/PATTERN:開啟檔案,定位至第一次被PATTERN匹配到的行的行首
編輯模式/命令模式:複製、粘帖、刪除行...
輸入模式:輸入內容到檔案
末行模式:檔案管理命令
開啟vim編輯器,預設處於編輯模式。
模式之間是可以相互轉換的。
編輯 --> 輸入
大寫字母
輸入 --> 編輯
編輯 --> 末行模式(只能從編輯模式進入)
末行模式可以執行的命令:
末行模式 --> 編輯
輸入模式到末行模式不能直接轉換;
二:關閉檔案
三:移動游標(編輯/命令模式)
逐字元移動:可以用上下左右鍵,也可以:
逐單詞移動
行內跳轉/移動
0:行首,絕對行首
^:行首,行首的第一個非空白字元,相對行首
$:行尾,絕對行尾
行間跳轉
末行模式下跳轉:直接給出行號,斷行符號即可
四、翻屏操作
Ctrl+f:向下翻一屏,向檔案尾部翻一屏
Ctrl+b:向上翻一屏,向檔案首部翻一屏
Ctrl+d:向下翻半屏
Ctrl+u:向上翻半屏
五、刪除單個字元
x:刪除游標所在處的單個字元
#x:刪除游標所在處及向後的共#個字元
六、刪除命令d
七、粘貼命令:p
八、複製命令:y
用法同d命令
yy:複製一行
3yy、y0、y$...
九、先刪除內容,再轉換為輸入模式(即:替換或修改)
十、替換命令
十一、撤銷編輯
撤銷撤銷:撤銷/還原上一次的撤銷操作:Ctrl+r
十二、重複前一次的編輯操作
十三、可視化模式
十四、尋找
十五、尋找並替換
在末行模式下使用s命令,用法與sed一模一樣。
例如:將文檔中從當前行(.)開始到文檔底部的所有小寫he替換為大寫的HE
:.,$-1s/he/HE/g
全文替換:
:1,$ 或者 :%
1,$,表示從第一行到最後一行,百分比符號也是指全文。
練習題:
將/etc/yum.repos.d/server.repo檔案中的ftp://instructor.example.com/pub替換為http://172.16.0.1/yum
key
%s/ftp:\/\/instructor\.example\.com\/pub/http:\/\/172.16.0.1\/yum/gi
%s@ftp://instructor\.example\.com\/pub@http://172.16.0.1/yum@gi
十六、如何開啟多個檔案
vim FILE1 FILE2 FILE3
:next:切換至下一個檔案
:prev:切換至前一個檔案
:last:切換至最後一個檔案
:first:切換至第一個檔案
vim rc.local init
預設顯示第一個檔案;
切換到下個檔案:next
切換到上個檔案:prev(注意:切換到上個檔案之前,必須儲存編輯過的這個檔案,否則切換不過去的)
退出:全部退出
:qa
:qall
十七、分屏顯示一個檔案
看著前面的內容來編輯後面的內容
Ctrl+w,s :水平分割視窗
Ctrl+w,v :垂直分割視窗
切換視窗:Ctrl+w,ARROW(上下左右方向箭頭)
退出:
:q 退出一個視窗
:qa 全部退出,關閉所有視窗
--------------------------------------------------------
水平分割視窗:
Ctrl+w,鬆開後,再按 s
Ctrl+w+向下/上的箭頭,切換游標到上/下面的視窗編輯。
垂直分割視窗:
Ctrl+w,鬆開後,再按 v
十八、分視窗顯示多個檔案
視窗1顯示檔案1,視窗2顯示檔案2
水平分割顯示,如:vim -o FILE1 FILE2
垂直分割顯示,如:vim -O FILE1 FILE2
十九、將當期檔案的部分內容另存新檔另外一個檔案
末行模式下使用w命令
:w
:w /path/to/somewhere
:ADDR1,ADDR2w /path/to/somewhere
二十、將另外一個檔案內容填充在當前檔案中(合并兩個檔案)
:r /path/to/somefile
二十一、跟shell互動
末行模式下輸入:
:! COMMAND
#COMMAND不支援alias別名命令
二十二、進階話題
1、顯示或取消顯示行號
:set number -- set nu
:set nonu
2、忽略或區分字元大小寫
:set ic
:set ignorecase
:set noic
:set noignorecase
3、設定自動縮排(寫指令碼的時候很有用)
:set autoindent
:set ai
:set noai
4、設定高亮顯示(尋找到的文本高亮顯示)
:set hlsearch
:set nohlsearch
5、文法高亮
:syntax on
:syntax off
二十三、vim設定檔
全域:vim /etc/vimrc
局部(使用者級):vim ~/.vimrc
關於vim的練習題:
系統內建的vimtutor,每天做一遍,每次控制在半小時內搞定,就成了。
本文出自 “冷水泡茶” 部落格,請務必保留此出處http://miaocbin.blog.51cto.com/689091/1665883
VIM編輯器的使用方法詳解