Linux vi中的命令

2021-09-01 19:09:25 字數 2831 閱讀 6477

移動游標

上:k nk:向上移動n行 9999k或gg可以移到第一行 g移到最後一行

下:j nj:向下移動n行

左:h nh:向左移動n列

右:l nl:向右移動n列

w:游標以單詞向前移動 nw:游標向前移動n個單詞 游標到單詞的第乙個字母上

b:與w相反

e: 游標以單詞向前移動 ne:游標向前移動n個單詞 游標到單詞的最後乙個字母上

ge:與e相反

$:移動游標到行尾 n$:移動到第n行的行尾

0(num):移動游標到行首

^:移動游標到行首第乙個非空字元上去

f:移動游標到當前行的字元a上,nf移動游標到當前行的第n個a字元上

f:相反

%:移動到與制匹配的括號上去(),{},,<>等。

ng:移動到第n行上 g:到最後一行

ctrl+g 得到當前游標在檔案中的位置

向前翻頁:ctrl+f

向下移動半屏:ctrl+g

向後翻頁:ctrl+b

存檔::q! :不存檔退出

:e! :放棄修改檔案內容,重新載入該檔案編輯

:wq :存檔退出

dw:刪除乙個單詞,需將游標移到單詞的第乙個字母上,按dw,如果游標在單詞任意位置,用daw

dnw:刪除n個單詞

dne:也可,只是刪除到單詞尾

dnl:向右刪除n個字母

dnh:向左刪除n個字母

dnj:向下刪除n行

dnk:向上刪除n行

d$:刪除當前游標到改行的行尾的字母

dd:刪除一行

cnw[word]:將n個word改變為word

cc:改變整行

c$:改變到行尾

j: 刪除換行符,將游標移到改行,按shift+j刪除行尾的換行符,下一行接上來了.

u: 撤銷前一次的操作

shif+u(u):撤銷對該行的所有操作。

:set showmode :設定顯示工作模式

o:在當前行的下面另起一行

o(shift+o):在當前行的上面另起一行

nk或nj:游標向上或向下移n行,n為數字

an!【esc】:在行後面加n個感嘆號(!)

nx:執行n次x(刪除)操作

zz:儲存當前文件並退出vim

:help :檢視幫助文件,在這之中,按ctrl+] 進入超連線,按ctrl+o 返回。

:help subject :看某一主題的幫助,zz 退出幫助

:set number / set nonumber :顯示/不顯示行號

:set ruler /set noruler:顯示/不顯示標尺

把游標放到某個單詞上面,然後按×號鍵,表示查詢這個單詞

查詢整個單詞:/\

:set hlsearch 高亮顯示查詢到的單詞

:set nohlsearch 關閉改功能

m[a-z]:在文中做標記,標記號可為a-z的26個字母,用`a可以移動到標記a處

r:替換當前字元

nr字元:替換當前n個字元

查詢替換:

way1:

/【word】 :查詢某個word

cw【newword】:替換為新word

n: 繼續查詢

.: 執行替換

way2:

:s/string1/string2/g:在一行中將string1替換為string2,g表示執行 用c表示需要確認

:num1,num2 s/string1/string2/g:在行num1至num2中間將string1替換為string2

:1,$ s/string1/string2/g:在全文中將string1替換為string2

v:進入visual 模式

【esc】退出

v:shift+v 進入行的visual 模式

ctrl+v:進如塊操作模式用o和o改變選擇的邊的大小。

貼上:p,這是貼上用x或d刪除的文字

複製:ynw:複製n個單詞

yy:複製一行

ynl:複製n個字元

y$:複製當前游標至行尾處

nyy:拷貝n行

完了用p貼上

:split:分割乙個視窗

:split file.c :為另乙個檔案file.c分隔視窗

:nsplit file.c: 為另乙個檔案file.c分隔視窗,並指定其行數

ctrl+w在視窗中切換

:close:關閉當前視窗

在所有行插入相同的內容如include<,操作方法如下:

將游標移到開始插入的位置,按ctrl+v進入visual模式,選擇好模組後

按i(shift+i),後插入要插入的文字,按[esc]完成。

:read file.c 將檔案file.c的內容插入到當前游標所在的下面

:0read file.c 將檔案file.c的內容插入到當前檔案的開始處(第0行)

:nread file.c 將檔案file.c的內容插入到當前檔案的第n行後面

:read !cmd :將外部命令cmd的輸出插如到當前游標所在的下面

:n1,n2 write temp.c 將本檔案中的n1,到n2行寫入temp.c這個檔案中去

ctrl+l重新整理螢幕

shift + < 左移一行

shift + > 右移一行

u: undo

ctrl+r: re-do

j: 合併一行

ctrl+p 自動完成功能

ctrl+g 檢視當前檔案全路徑

q[a-z] 開始記錄但前開始的操作為巨集,名稱可為【a-z】,然後用q終止錄製巨集。

用reg顯示當前定義的所有的巨集,用@[a-z]來在當前游標處執行巨集[a-z].

Linux VI 替換命令

vi vim 中可以使用 s 命令來替換字串。以前只會使用一種格式來全文替換,今天發現該命令有很多種寫法 vi 真是強大啊,還有很多需要學習 記錄幾種在此,方便以後查詢。s vivian sky 替換當前行第乙個 vivian 為 sky s vivian sky g 替換當前行所有 vivian ...

linux vi 命令大全

進入vi的命令 vi filename 開啟或新建檔案,並將游標置於第一行首 vi n filename 開啟檔案,並將游標置於第n行首 vi filename 開啟檔案,並將游標置於最後一行首 vi pattern filename 開啟檔案,並將游標置於第乙個與pattern匹配的串處 vi r...

Linux vi 命令引數

文字編輯器是所有計算機系統中最常用的一種工具。unix下的編輯器有ex,sed和vi等,其中,使用最為廣泛的是vi,而vi命令繁多,論壇裡好像這方面的總結不多,以下稍做總結,以資共享!渴望更正和補充!進入vi的命令 vi filename 開啟或新建檔案,並將游標置於第一行首 vi n filena...