linux下文本編輯器vim的使用方法(復(fù)制、粘貼、替換、行號(hào)、撤銷、多文件操作)
文本文件的編輯命令:vim
1、vim的三種狀態(tài)模式
1)命令模式(默認(rèn))
備注:命令模式下輸入“:q!”可以退出vim。
2)可編輯模式(通過(guò)命令模式下輸入小寫“i”進(jìn)入可編輯模式;按Esc退出至命令模式)
備注:小寫i,在當(dāng)前光標(biāo)處插入;小寫a,在當(dāng)前光標(biāo)后插入。
3)末行模式(通過(guò)命令模式下進(jìn)入,按Esc退出至命令模式)
作用:在文件的最后一行執(zhí)行非文本編輯命令,保存、打開(kāi)文件,寫文件名等。
例如“:w”的作用是,填寫文件名;
例如“:wq”的作用是,填寫文件后保存并退出;
例如“/”,從上往下查找;
例如“?”,從下往上查找;
2、vim的基本操作
1)打開(kāi)文件

vim 文件名即可打開(kāi)并進(jìn)入命令模式。
2)編輯文件
命令模式下,輸入小寫i即可進(jìn)入編輯模式;
3)保存文件并退出

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

再輸入: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)替換操作
行替換
:s/被替換對(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)前打開(kāi)的多個(gè)文件的名字,【當(dāng)前文件的名字】;
命令:“:next”切換顯示下一個(gè)文檔;
命令:“:prev”切換顯示上一個(gè)文檔;
命令:“:first”切換顯示第一個(gè)文檔;
命令:“:last”切換顯示最后一個(gè)文檔。

4)操作的撤銷與恢復(fù)
備注:無(wú)論是u撤銷,還是ctrl+r恢復(fù),前提要是文件不能執(zhí)行了保存。
小寫u:change before(按行,分步驟以時(shí)間軸為單位撤銷最近的動(dòng)作)直至already at oldest change(可撤銷多步);
大寫U:僅撤銷一步操作;

Ctrl+r:change 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)鍵的說(shuō)明:
x,X : 在一行中,x為向后刪除一個(gè)字符(相當(dāng)于del鍵),X為向前刪除一個(gè)字符(相當(dāng)于backspace鍵)。
dd : 刪除光標(biāo)所在的那一整行。
ndd : n 為數(shù)字。從光標(biāo)開(kāi)始,刪除向下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)前位置開(kāi)始,光標(biāo)所經(jīng)過(guò)的地方會(huì)被選中,再按一下v結(jié)束。
V 從光標(biāo)當(dāng)前行開(kāi)始,光標(biāo)經(jīng)過(guò)的行都會(huì)被選中,再按一下V結(jié)束。
ctrl+v 從光標(biāo)當(dāng)前位置開(kāi)始,選中光標(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行的問(wèn)題:
在當(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è)命令。換句話說(shuō),它撤銷一個(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)瀏覽過(guò)的位置之間來(lái)回移動(dòng)。在 vim 中使用 Ctrl-O 執(zhí)行后退,使用 Ctrl-I 執(zhí)行前進(jìn)。
相關(guān)幫助: :help CTRL-O :help CTRL-I :help jump-motions
相關(guān)文章

集成系統(tǒng)級(jí)Claw模式! Deepin 官宣發(fā)布 25.1 版本
deepin操作系統(tǒng)發(fā)布了最新的 25.1 版本更新,該版本基于 deepin 25 正式版積累的多輪內(nèi)測(cè)成果,在 AI 能力、內(nèi)核版本、桌面環(huán)境、文件管理器以及系統(tǒng)安全等方面進(jìn)行了更新2026-04-13
又一代老硬件退場(chǎng)! Linux 內(nèi)核正式放棄Intel 486 CPU
在過(guò)去的幾十年間,CPU 的架構(gòu)已經(jīng)經(jīng)歷了飛速發(fā)展,x86 系列就是其中之一,而 i486 則屬于該系列中的一個(gè),當(dāng)前,i486 的CPU處理器已經(jīng)夠老,從 Linux 7.1 開(kāi)始將不再有對(duì)2026-04-09
趕緊收藏! 全網(wǎng)最全 Linux 命令總結(jié)
我把 Linux 中最常用、最實(shí)用、最常被問(wèn)到的命令按照實(shí)際使用場(chǎng)景分類整理,方便你快速查閱和記憶,內(nèi)容覆蓋日常運(yùn)維、開(kāi)發(fā)調(diào)試、性能分析、文件處理、網(wǎng)絡(luò)、安全、系統(tǒng)管2026-04-08
一分鐘內(nèi)檢查L(zhǎng)inux服務(wù)器性能? 9個(gè)性能檢測(cè)常用的基本命令
今天我們來(lái)看看Linux系統(tǒng)中用于性能監(jiān)控的一系列命令,這些命令可以快速查看機(jī)器的負(fù)載情況,詳細(xì)請(qǐng)看下文介紹2026-03-18
從零基礎(chǔ)到精通! 適合高級(jí)用戶的15款Linux發(fā)行版推薦
Linux作為操作系統(tǒng)領(lǐng)域靈活性和可定制性的基石,提供了大量滿足不同用戶需求的發(fā)行版,今天分享適合高級(jí)用戶的15款Linux發(fā)行版2026-03-10
開(kāi)箱即用? 這4個(gè)高手級(jí)Linux發(fā)行版遠(yuǎn)沒(méi)你想象的那么安全易用
如果你正在糾結(jié)用哪個(gè)發(fā)行版?零基礎(chǔ)新手別被“高端”“極客”“聲明式”這些詞沖昏頭腦,先用好用的,再慢慢進(jìn)階2026-03-10
這幾款SSH工具真的夠用了! Linux好用的ssh工具推薦
在Linux上使用SSH,您需要安裝一個(gè)SSH客戶端,今天整理找到的8 款 SSH / 終端工具,從免費(fèi)開(kāi)源到企業(yè)級(jí)商用,從輕量化命令行到一站式工具箱,每款都做了介紹與對(duì)比,希望能2026-03-09
在Linux系統(tǒng)下有兩種用戶,即高級(jí)用戶root,普通用戶,高級(jí)用戶root可以在系統(tǒng)中做任何事情,普通用戶僅可在Linux系統(tǒng)中做有限的事情,下面我們就來(lái)看看切換方法2026-02-28
揭秘當(dāng)前登錄用戶的身份! Linux中使用logname命令的技巧
logname命令就是這樣一個(gè)簡(jiǎn)單但強(qiáng)大的工具,它能幫助我們輕松獲取當(dāng)前登錄用戶的用戶名,今天,我們就來(lái)深入探索一下這個(gè)命令的工作原理、使用方法和最佳實(shí)踐2026-02-26
在 Linux 系統(tǒng)中,DNS 緩存是一種將域名和 IP 地址映射關(guān)系緩存在本地的機(jī)制,可以加快域名解析速度,并減輕 DNS 服務(wù)器的負(fù)載2026-02-26



