3 Linux全屏文字編輯器vi(vim)的使用

2021-09-20 17:25:20 字數 3837 閱讀 1936

全屏文字編輯器:在linux裡是預設的編輯器

vi:visual inte***ce,s.u.n(斯坦圖大學網路研究中心)公司的bill joy(比爾喬伊)主持開發的

vim:vi improved(vi的公升級版)

模式化編輯器:

編輯模式(命令模式)-->預設的工作模式

末行模式-->

插入模式(輸入模式)-->

替換模式-->

視覺化模式 -->

一、vi/vim的開啟方式:

1.vi/vim:開啟vi/vim的介面

2.vim file :file存在,則開啟並將游標預設放置在第一行第乙個字元;

file不存在,則以新檔案的方式開啟,若儲存,則檔案被建立;若不儲存,檔案消失;

3.vim + # file:指定在開啟檔案的時候,將游標定位在第#行行首;如果定位的行數比整個文件的行還要打,則游標停留在最後一行的行首;

4.vim + file:直接將游標定位在文件的最後一行行首;

5.vim +/pattern/(模式匹配符):開啟檔案,並且將游標定位至首次被pattern匹配的行的行首位置:即只完成首次匹配。

二、vim的關閉方式:

末行模式的關閉:

:q直接關閉vim編輯器,不儲存修給內容;

:q!強制退出但不予儲存;

:w儲存修改的內容;

:wq儲存修改的內容並關閉vim編輯器;

:wq!對於root使用者來說,一些唯讀檔案的修改可以強制儲存並推出;

:w!強制儲存

編輯模式的關閉:

zz:儲存並退出;

zq:不儲存退出;

三、在vim的編輯模式中。移動游標;

1.逐字元移動

1)arrow

2)h:游標向左

j:游標向下

k:游標向上

l:游標向右

2.逐字移動 w

:將游標移動到下乙個字的字首;(兩個單詞之間有空格算乙個字)

e:將游標移動到下乙個字的字尾;

b:將游標移動到上乙個次的字首;

3.行內跳**

0(零):絕對行首;將游標移動到行首位置

^:相對行首;將游標移動到非空白字元行首位置

$:絕對行為;將游標移動到行尾位置

4.行間跳**

#g:直接將游標移動至#行;

g:直接將游標移動到文件的最後一行;

gg:直接將游標移動至第一行

末行模式中游標移動:

:# 直接將游標移動至第#行;

:1 直接將游標移動至第一行;

:$ 直接將游標移動至文件的最後一行;

四、翻屏

ctrl+f:向下翻一屏

ctrl+b:向上翻一屏

ctrl+d:向下翻半屏

ctrl+u:向上翻半屏

五、逐字元刪除:

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

x:刪除游標所在位置左側的單個字元;

六、編輯模式中的萬能刪除命令; d

:刪除游標經過的所有內容;

dh、dj、dk、dl、darrow、dw、de、de、dg、dgg

dd:刪除游標所在行;

在末行模式下:

:d:刪除游標所在行

:#d:刪除第#行

:m,+nd:刪除從m行開始,再經過n行的所有行;

:m,nd:刪除從第m行開始到第n行結束的所有行;

:.,$d:刪除從游標所在行到文件的最後一行;

.:表示當前游標所在行;

$:文件的最後一行

七、p(小寫):向右向下進行貼上;

p(大寫):向左向上進行貼上;

末行模式下: p

八、y:複製游標經過的所有內容;

用法與d命令相同

yy:複製游標所在行

九、模式的切換:

1.從編輯模式到末行模式:

:輸入命令

/和?進行查詢, n和n,n表示順序查詢,n表示逆序查詢;

/:自上而下

?:自下而上    

2.從末行模式到編輯模式;

ecs鍵

enter鍵

backspace鍵

3.從編輯魔術到輸入模式;

i:將游標移動至行首並進入輸入模式; i

:在游標所在位置的前面插入字元;

a:將游標移動至行尾並進入輸出模式; a

:在游標所在位置的後面插入字元

o:在游標所在行的上面插入新行;

o:在游標所在行的下面插入新行;

cc:刪除整行內容之後,進入輸入模式;

c:從游標所在位置刪除至行尾,進入輸入模式;

s:刪除游標所在位置的乙個字元,進入輸入模式;

s:刪除整行內容之後,進入輸入模式;

4.ecs鍵

5.從編輯模式到替換模式:

r:進入替換模式

6.從替換模式到編輯模式:

ecs鍵

7.v:按照字元為單位進行矩形選取;

v:按照行為單位進行矩形選取;

在選取之後可以執行複製或刪除的操作;

只要完成操作,就返回到編輯模式;

所有的模式切換必須經由編輯模式,兩種非編輯模式之間無法直接進行切換;

十、替換命令 r

:替換游標所在位置的乙個字元;

十一、撤銷編輯操作

u:撤銷一次此前的編輯操作;

ctrl+r:撤銷最近的一次撤銷操作;

十二、.:重複之前的一次編輯操作:

十三、特殊的末行命令:

1.顯示和取消行編號:

:set number --> :set nu

:set nonumber --> :set nonu

2.開啟或關閉字元大小寫:

:set ignorecase --> :set ic

:set noignorecase --> :set noic

3.開啟或關閉自動縮排功能:

:set autoindent --> :set ai

:set noautoindent --> :set noai

4.開啟或關閉查詢高亮顯示:

:set hlsearch

:set nohlsearch --> :set nohl

5.開啟或關閉語法著色

:syntax on

:syntax off

十四、vimtutor

十五、使用vim編輯多個檔案

1)vim file1 file2 file3 ...

:next   檢視或編輯後乙個文件的內容

:prev   檢視或編輯前乙個文件的內容

:first  檢視或編輯第乙個文件的內容

:last   檢視或編輯 最後乙個文件的內容

2)vim -o|o file1 file2 file3 ...

-o:水平分屏顯示多個檔案

-o:垂直分屏顯示多個檔案

ctrl+w,arrow(箭頭)

#ctrl+w,arrow(箭頭)

#ctrl+w,s  將乙個檔案水平分屏顯示

#ctrl+w,v  將乙個檔案垂直分屏顯示

:qa(q all 退出所有)

:wa(w all 儲存所有)

十六、將其他檔案中的內容填充至當前檔案中

:r /path/to/somefile      

十七、跟shell互動

:!command(直接開啟shell執行命令,enter退出)

十八、部分另存為

:w /path/to/somefile 

:m,nu /path/to/somefile

:m,+nw

:.,$w

vi文字編輯器

一 操作模式 1 三種操作模式 命令模式 command mode 插入模式 input mode 末行模式 last line mode 2 執行與結束 在系統提示字元 如 下敲入vi 文件名稱 vi 可以自動幫你載入所要編輯的檔案或是開啟乙個新 檔案 如果該檔案不存在或缺少檔名 進入 vi 後螢...

VI文字編輯器

1.工作模式 2.命令列模式功能鍵 yy 複製當前游標所在行 n yy n為數字,複製當前游標開始的n行 p 貼上複製的內容到游標所在行 dd 刪除當前游標所在行 n dd 刪除游標所在行開始的n行 字串 查詢游標之後的字串 g 游標移動到檔案尾 u 取消前乙個動作 h 游標左移乙個字元 j 游標下...

vi文字編輯器

vi是乙個強大的常用的文字編輯器,vim是高階版的vi vi test.txt 進入vi的一般模式,如果test.txt檔案存在則開啟,如果不存在則會建立 例1 查詢字母a 輸入 輸入 a 即 a 例2 查詢空格 輸入 輸入 n 即 n 例3 查詢響應時間大於400的,格式為cos 4xx 運用正規...