vi 常用技巧

2022-07-27 10:12:11 字數 2628 閱讀 6192

vi命令可以說是unix/linux世界裡最常用的編輯檔案的命令了,但是因為它的命令集眾多,很多人都不習慣使用它,其實您只需要掌握基本命令,然後加以靈活運用,就會發現它的優勢,並會逐漸喜歡使用這種方法。本文旨在介紹vi的一些最常用命令和高階應用技巧。

編輯模式(命令模式)

輸入模式

末行模式

i: 在當前游標所在字元的前面,轉為輸入模式;

a: 在當前游標所在字元的後面,轉為輸入模式;

o: 在當前游標所在行的下方,新建一行,並轉為輸入模式;

i:在當前游標所在行的行首,轉換為輸入模式

a:在當前游標所在行的行尾,轉換為輸入模式

o:在當前游標所在行的上方,新建一行,並轉為輸入模式;

escesc, esc

# vim /path/to/somefile

vim +# :開啟檔案,並定位於第#行

vim +:開啟檔案,定位至最後一行

vim +/pattern : 開啟檔案,定位至第一次被pattern匹配到的行的行首

預設處於編輯模式

:q 退出

:wq 儲存並退出

:q! 不儲存並退出

:w 儲存

:w! 強行儲存

:wq --> :x

zz: 儲存並退出

h: 左

l:  右

j:  下

k:  上

#h:  移動#個字元;

w: 移至下乙個單詞的詞首

e: 跳至當前或下乙個單詞的詞尾

b: 跳至當前或前乙個單詞的詞首

#w:

0: 絕對行首

^: 行首的第乙個非空白字元

$: 絕對行尾

#g:跳轉至第#行;

g:最後一行

末行模式下,直接給出行號回車即可

ctrl + n : 跳轉到下一行行首

ctrl + p : 跳轉到上一行行首

ctrl+f: 向下翻一屏

ctrl+b: 向上翻一屏

ctrl+d: 向下翻半屏

ctrl+u: 向上翻半屏

x: 刪除游標所在處的單個字元

#x: 刪除游標所在處及向後的共#個字元

d: 命令跟跳轉命令組合使用;

#dw : 刪除乙個單詞

#de : 刪除到乙個單詞的尾部

#db : 刪除到乙個單詞的首部

dd   : 刪除當前游標所在行

#dd : 刪除包括當前游標所在行在內的#行;

d$   : 刪除到行末

d0   : 刪除到行首

格式: startadd,endaddd

. : 表示當前行

$ : 最後一行

+# : 向下的#行

如 : 1,8d 刪除1到8行; .,+5d 刪除當前行和之後的5行; .,$-3d 刪除當前行到倒數第3行;

最後一次被刪除的內容會被放入緩衝區當中,可用於黏貼

連續u命令可撤消此前的n次編輯操作

#u: 直接撤消最近#次編輯操作

撤消最近一次撤消操作:ctrl+r

最多能撤銷最近50操作;

v: 按字元選取

v:按矩形選取

shift+3 : 查詢游標所在字元(?\)

shift+8 :  查詢游標所在字元(/\)

/pattern

?patternnn

在末行模式下使用s命令

addr1,addr2s@pattern@string@gi

1,$%:表示全文

如: 1,$-2s/h/h/gi ; %s/h/h/gi

vim file1 file2 file3

:next 切換至下乙個檔案

:prev 切換至前乙個檔案

:last 切換至最後乙個檔案

:first 切換至第乙個檔案

退出:qa 全部退出

ctrl+w, s: 水平拆分視窗

ctrl+w, v: 垂直拆分視窗

在視窗間切換游標:

ctrl+w, arrow

:qa 關閉所有視窗

vim -o : 水平分割顯示

vim -o : 垂直分割顯示

末行模式下使用w命令

:w:addr1,addr2w /path/to/somewhere

如: 1,2w 12line

:r /path/to/somefile

:! command

1、顯示或取消顯示行號

:set number

:set nu

:set nonu

2、顯示忽略或區分字元大小寫

:set ignorecase

:set ic

:set noic

3、設定自動縮排

:set autoindent

:set ai

:set noai

4、查詢到的文字高亮顯示或取消

:set hlsearch

:set nohlsearch

5、語法高亮

:syntax on

:syntax off

/etc/vimrc

~/.vimrc

vi 常用技巧

vi命令可以說是unix linux世界裡最常用的編輯檔案的命令了,但是因為它的命令集眾多,很多人都不習慣使用它,其實您只需要掌握基本命令,然後加以靈活運用,就會發現它的優勢,並會逐漸喜歡使用這種方法。本文旨在介紹vi的一些最常用命令和高階應用技巧。編輯模式 命令模式 輸入模式 末行模式 i 在當前...

Vi常用小技巧

set nu 顯示行號 set nonu 取消顯示行號 shift g 最後一行 1 shift g 第一行 gg也行 ng n 為數字。移動到這個檔案的第 n 行 shift 4 行尾 0 行首 d158 刪除158行 dd 刪除當前一行 在一般模式之中,只要按下 i,o,a 等字元就可以進入輸入...

10個VI的常用技巧

1.開啟和關閉行號 set nu set nonu 2.自動縮排 set autoindent set shiftwidth 4 3.搜尋時不區分大小寫 set ic set noic 4.復合搜尋 如果希望搜尋出現在另乙個模式或字串後面的某個模式或字串,不管這兩個模式或 字串是否在同一行上,那麼可...