linux系統(tǒng)下文本編輯器vim的使用方法(復(fù)制/粘貼/替換/行號(hào)/撤銷/多文件操作)

2020-06-20 01:59:38 來源:互聯(lián)網(wǎng)作者:佚名 人氣: 次閱讀 45 條評(píng)論

這篇文章主要介紹了linux下文本編輯器vim的使用方法,包括復(fù)制、粘貼、替換、行號(hào)、撤銷、多文件操作,需要的朋友可以參考下...

  這篇文章主要介紹了linux下文本編輯器vim的使用方法,包括復(fù)制、粘貼、替換、行號(hào)、撤銷、多文件操作,需要的朋友可以參考下

  文本文件的編輯命令:vim

1、vim的三種狀態(tài)模式

  1)命令模式(默認(rèn))

  備注:命令模式下輸入“:q!”可以退出vim。

  2)可編輯模式(通過命令模式下輸入小寫“i”進(jìn)入可編輯模式;按Esc退出至命令模式)

  備注:小寫i,在當(dāng)前光標(biāo)處插入;小寫a,在當(dāng)前光標(biāo)后插入。

  3)末行模式(通過命令模式下進(jìn)入,按Esc退出至命令模式)

  作用:在文件的最后一行執(zhí)行非文本編輯命令,保存、打開文件,寫文件名等。

  例如“:w”的作用是,填寫文件名;

  例如“:wq”的作用是,填寫文件后保存并退出;

  例如“/”,從上往下查找;

  例如“?”,從下往上查找;

2、vim的基本操作

  1)打開文件

  vim 文件名即可打開并進(jìn)入命令模式。

  2)編輯文件

  命令模式下,輸入小寫i即可進(jìn)入編輯模式;

  3)保存文件并退出

  編輯完成后,按Esc返回命令模式,輸入“:w”(沒有文件名的話添加文件名);

  再輸入:q即可退出。

  3、vim的編輯操作(在命令模式下)

1)復(fù)制操作

  小寫“yy”復(fù)制單行;

  “2yy”復(fù)制光標(biāo)處2行;

  ……

  “nyy”復(fù)制光標(biāo)出n行。

2)粘貼操作

  小寫“p”粘貼到當(dāng)前光標(biāo)的下一行;

  大寫“P”粘貼到當(dāng)前光標(biāo)的下一行;

3)刪除操作

  “dd”刪除當(dāng)前行

  “2dd”刪除光標(biāo)處當(dāng)前兩行;

  ……

4)增行操作open

  小寫“o”,在當(dāng)前光標(biāo)處的下一行插入空行;

  大寫“o”,在當(dāng)前光標(biāo)處的上一行插入空行;

  4、vim的查找替換操作(在末行模式下)

1)查找操作

  作用:查找包含關(guān)鍵字的行;

  在命令模式下輸入“/查找對(duì)象”,即可從上往下查找,按n查找(next);

  在命令模式下輸入“?查找對(duì)象”,即可從上往下查找,按n查找(next);

2)替換操作

行替換

 ?。簊/被替換對(duì)象/新對(duì)象/gc,提示后按y即完成替換。

全文替換

 ?。?s/被替換對(duì)象/新對(duì)象/gc,分別按行提示后按y即完成替換。

  輸入:wq(保存并退出)。

  5、vim的高級(jí)操作1)行號(hào)的設(shè)置

  在末行模式下輸入“:set nu”即可顯示文件的行號(hào);

  在末行模式下輸入“:set nonu”即可關(guān)閉顯示文件的行號(hào);

  vi ~/.vimrc

  2)~/.vimrc的編輯設(shè)置

  3)多文件的并發(fā)操作

該操作便于多文件相互復(fù)制粘貼等。

  命令:vim 文件名1 文件名2 文件名3……

  命令:“:args”在底部顯示當(dāng)前打開的多個(gè)文件的名字,【當(dāng)前文件的名字】;

  命令:“:next”切換顯示下一個(gè)文檔;

  命令:“:prev”切換顯示上一個(gè)文檔;

  命令:“:first”切換顯示第一個(gè)文檔;

  命令:“:last”切換顯示最后一個(gè)文檔。

  4)操作的撤銷與恢復(fù)

  備注:無論是u撤銷,還是ctrl+r恢復(fù),前提要是文件不能執(zhí)行了保存。

小寫u

 ?。篶hange before(按行,分步驟以時(shí)間軸為單位撤銷最近的動(dòng)作)直至already at oldest change(可撤銷多步);

大寫U

 ?。簝H撤銷一步操作;

Ctrl+r

 ?。篶hange after (按行,分步驟以時(shí)間軸為單位恢復(fù)被撤銷的動(dòng)作)直至already at oldest change;

Ctrl+R

  :恢復(fù)被撤銷的,一步到底;

linux 下 vi 文本編輯如何復(fù)制一行粘貼刪除一行數(shù)據(jù)

  在使用vi有時(shí)會(huì)想直接復(fù)制一行數(shù)據(jù),然后粘貼一行或者直接刪除一行數(shù)據(jù)

  復(fù)制一行數(shù)據(jù)的方法

  把光標(biāo)放到要復(fù)制的一行前面,然后按兩下yy字母鍵

  然后把光標(biāo)放到要復(fù)制到的地方去,按鍵盤的p字母鍵

  刪除一行是把光標(biāo)移動(dòng)到要?jiǎng)h除的一行上,按兩下dd鍵

  下面是相關(guān)鍵的說明:

  x,X : 在一行中,x為向后刪除一個(gè)字符(相當(dāng)于del鍵),X為向前刪除一個(gè)字符(相當(dāng)于backspace鍵)。

  dd : 刪除光標(biāo)所在的那一整行。

  ndd : n 為數(shù)字。從光標(biāo)開始,刪除向下n列。

  yy : 復(fù)制光標(biāo)所在的那一行。

  nyy : n為數(shù)字。復(fù)制光標(biāo)所在的向下n行。

  p,P : p 為將已復(fù)制的數(shù)據(jù)粘貼到光標(biāo)的下一行,P則為貼在光標(biāo)的上一行。

  u : 復(fù)原前一個(gè)操作

  CTRL + r : 重做上一個(gè)操作。

  小數(shù)點(diǎn)'.': 重復(fù)前一個(gè)動(dòng)作。

vim常用命令(刪除、復(fù)制、粘貼、撤銷、查找、插入、光標(biāo)移動(dòng)、選擇、保存、退出)

  vim基本操作:

  選擇文本

  v 從光標(biāo)當(dāng)前位置開始,光標(biāo)所經(jīng)過的地方會(huì)被選中,再按一下v結(jié)束。

  V 從光標(biāo)當(dāng)前行開始,光標(biāo)經(jīng)過的行都會(huì)被選中,再按一下V結(jié)束。

  ctrl+v 從光標(biāo)當(dāng)前位置開始,選中光標(biāo)起點(diǎn)和終點(diǎn)所構(gòu)成的矩形區(qū)域,再按一下Ctrl + v結(jié)束。

  ggVG 選中全部的文本,其中g(shù)g為跳到行首,V為選中整行,G為末尾

  刪除,復(fù)制,粘貼,撤銷

  d 刪除 dd 刪除整行 ndd 刪除n行

  x 刪除一個(gè)字符

  u 撤銷上一次操作

  ctrl+R 反撤銷(撤銷撤銷操作)

  y復(fù)制 (復(fù)制到寄存器)

  p粘貼 (默認(rèn)從寄存器取出)

  常用 先是ESC

  i 光標(biāo)前插入文本

  a 光標(biāo)后插入文本

  o 在下面另起一行,并使當(dāng)前模式轉(zhuǎn)為Insert模式

  O(大寫O) 將在當(dāng)前行的上面另起一行

  :q 退出

  :q! 強(qiáng)制退出

  :wq 保存并退出

  ZZ 保存并退出

  / 簡(jiǎn)單搜索 /pp 在文件中搜索pp

  移動(dòng)命令

  $ 將光標(biāo)移動(dòng)到行尾 2$ 移動(dòng)到下一行的行尾 n$ 移動(dòng)到下n行的行尾

  ^ 將光標(biāo)移動(dòng)到當(dāng)前行第一個(gè)非空白字符上

  0(數(shù)字0) 將光標(biāo)移動(dòng)到當(dāng)前行的第一個(gè)字符上

  G 將光標(biāo)移動(dòng)到最后一行。 33G 將光標(biāo)移動(dòng)到33行

  gg 跳到第一行

Vim 全選復(fù)制粘貼 撤銷 回退 操作

  全部刪除:按esc鍵后,先按gg(到達(dá)頂部),然后dG

  全部復(fù)制:按esc鍵后,先按gg,然后ggyG

  全選高亮顯示:按esc鍵后,先按gg,然后ggvG或者ggVG

  單行復(fù)制:按esc鍵后, 然后yy

  單行刪除:按esc鍵后, 然后dd

  粘貼:按esc鍵后, 然后p

  復(fù)制到粘貼板: 全選高亮顯示之后,ctrl+shift+c,

  vim只能粘貼50行的問題:

  在當(dāng)前用戶主目錄編輯~/.vimrc(如果不存在,新建這個(gè)文件),添加一行

  :set viminfo='1000,<500

  至于為什么要輸入輸入’1000,這個(gè)其實(shí)不重要,最主要的是輸入<500,它是設(shè)置寄存器保存的行數(shù)的。即最大值為 500

  在vim中按u可以撤銷一次操作

  u 撤銷上一步的操作

  Ctrl+r 恢復(fù)上一步被撤銷的操作

  注意:

  如果你輸入“u”兩次,你的文本恢復(fù)原樣,那應(yīng)該是你的Vim被配置在Vi兼容模式了。

  重做

  如果你撤銷得太多,你可以輸入CTRL-R(redo)回退前一個(gè)命令。換句話說,它撤銷一個(gè)撤銷。要看執(zhí)行的例子,輸入CTRL-R兩次。字符A和它后面的空格就出現(xiàn)了:

  young intelligent turtle

  有一個(gè)特殊版本的撤銷命令:“U”(行撤銷)。行撤銷命令撤銷所有在前一個(gè)編輯行

  上的操作。 輸入這些命令兩次取消前一個(gè)“U”:

  A very intelligent turtle

  xxxx 刪除very

  A intelligent turtle

  xxxxxx 刪除turtle

  A intelligent

  用“U”恢復(fù)行

  A very intelligent turtle

  用“u”撤銷“U”

  A intelligent

  “U”命令自己改變自己,“u”命令撤銷操作,CTRL-R命令重做操作。這有點(diǎn)亂,但不用

  擔(dān)心,用“u”和CTRL-R命令你可以切換到任何狀態(tài)。

  流行的文本編輯器通常都有前進(jìn)和后退功能,可以在文件中曾經(jīng)瀏覽過的位置之間來回移動(dòng)。在 vim 中使用 Ctrl-O 執(zhí)行后退,使用 Ctrl-I 執(zhí)行前進(jìn)。

  相關(guān)幫助: :help CTRL-O :help CTRL-I :help jump-motions