標籤:vim 命令 使用
vim:即visual interface improved,是從 vi 發展出來的一個功能強大的文字編輯器,下面來介紹下vim命令的一些簡單使用方法。
vim屬於模式化編輯器,有以下三種工作模式:編輯模式(預設)、輸入模式和末行模式 。
我們用vim開啟一個或多個文字檔時,使用格式為:vim [options] file file2...,常用的選項有:
+#:表示開啟文字檔後,讓游標定位到第#行行首
+/pattern : 表示開啟文字檔後,讓游標定位到第一個被pattern匹配到的行的行首
-o: 表示開啟多個文字檔後,將視窗水平分割
-O: 表示開啟多個文字檔後,將視窗豎直分割
一、模式間轉換:
編輯模式 ==> 輸入模式:
i:insert,在當前游標所在字元的前方轉入輸入模式;
a: append,附加,在當前游標所在字元的後方轉入輸入模式;
I:當前行行首轉入輸入模式
A:當前行行尾轉入輸入模式
o: 在當前行下方建立一個空白行並轉入輸入模式
O: 在當前行上方建立一個空白行並轉入輸入模式
輸入模式 ==> 編輯模式:按 ESC 鍵
編輯模式 ==> 末行模式:按 : 鍵
末行模式 ==> 編輯模式:按一下或多下 ESC 鍵
二、vim游標跳轉
1、字元間跳轉:h(左), j(下), k(上), l(右),當我們在命令前面加#(表示具體數字)則表示一次移動#個字元。
2、單詞間跳轉:w(下一個單詞的詞首)、e(當前或下一個單詞的詞尾)、b(當前或前一個單詞的詞首),同理在命令前加#,則表示一次移動#個單詞
3、行內移動:0(絕對行首)、^(本行行首第一個非空白字元)、$(絕對行尾)
4、行間移動:#G(跳轉至第#行)、G(尾行)
三、vim命令:
1、字元編輯(編輯模式下)
x: 刪除游標所在處的字元
#COMMAND: 刪除游標所在處及向右的#個字元
d: 刪除,結合游標跳轉字元,實現多字元刪除
d$: 刪除當前游標所在處至行尾
d^: 刪除當前游標所在處至行首
dw:刪除當前游標所在處至下一個單詞詞首
de:刪除當前游標所在處至當前或下一個單詞詞尾
db:刪除當前游標所在處至當前或上一個單詞詞首
dd: 刪除行
#dd: 刪除#行,從當前游標所在行開始,刪除#行
y: 複製(yank),結合游標跳轉字元,實現多字元複製,使用方法同d命令
p: 粘貼(paste)
p:緩衝區儲存如果整行,則粘貼於當前行下方;否則,則粘貼於當前游標所在處的後方
P:緩衝區儲存如果整行,則粘貼於當前行上方;否則,則粘貼於當前游標所在處的前方
c: 改變(change),結合游標跳轉字元,實現多字元修改,使用方法同d命令,並轉入輸入模式
r: 替換(replace),替換單個字元
u: 撤銷,撤銷上次操作,#u則表示撤銷#次前操作
ctrl+r: 取消上次的撤銷操作
.:重複執行上次操作
2、關閉檔案:(末行模式下)
:q! 保不存退出
:w! 強制儲存(通常沒有寫入權限時只有root使用者才能執行此類操作)
:wq 儲存退出
:x 儲存退出
:w /path/to/somefile 檔案另存
3、尋找和替換:(末行模式下)
字元尋找:
/pattern:從上往下根據pattern到文本中尋找
n:查看下一個匹配到的內容
N:查看上一個匹配到的內容
?pattern:從下往上根據pattern到文本中尋找
n:查看下一個匹配到的內容
N:查看上一個匹配到的內容
字元尋找替換:使用方法:s/要尋找的內容/替換為的內容/(650) this.width=650;" src="/e/u261/themes/default/images/spacer.gif" alt="spacer.gif" style="border:1px solid rgb(221,221,221);background-position:50% 50%;background-repeat:no-repeat;" />ig),要尋找的內容可以使用模式,替換為的內容不能除後向引用以外的元字元,分隔字元可按需要指定:[email protected]@@, s###
i: 忽略字元大小寫
g: 全域替換
後向引用:如果要引用“要找到的內容”匹配到的所有內容,可使用&直接引用,而無需在模式中加\(\);如果只引用“要找到的內容”中的部分模式比對到的內容,則仍需使用Regex的分組;而後使用\1, \2,...進行引用
四、設定內建變數(末行模式下)
在末行模式下使用set命令定義某內建變數的值為所需要的值;如果我們需要讓這些設定永久生效,那麼我們需要將設定儲存到設定檔中:/etc/vimrc或者~/.vimrc
:set nu 顯示行號
:set nonu 取消顯示行號
:set sm 開啟高亮和括弧匹配功能
:set nosm 取消高亮和括弧匹配功能
:set ai 自動縮排
:set noai 取消自動縮排
:set ic 忽略字元大小寫
:set noic 不忽略字元大小寫
:set hlsearch 搜尋結果顯示高亮
:set nohlsearch 關閉搜尋結果顯示高亮
:syntax on 開啟文法高亮功能
:syntax off 關閉文法高亮功能
每日命令之vim簡單使用