vim編輯命令怎么使用
vim是一個(gè)全屏編輯器,模式化編輯器。模式主要有編輯模式,輸入模式,末行模式。默認(rèn)打開vim命令進(jìn)入的是編輯模式。下面跟著學(xué)習(xí)啦小編一起來了解一下vim的使用方法吧。
vim編輯命令怎么使用
打開文件打開文件:vim /path/to/somefile
其他用法:
vim +#:打開文件,并定位到#行
vim +:打開文件,并定位到最后一行
vim +/pattern:打開文件,并定位到第一次被pattern匹配到的行的行首
關(guān)閉文件1、末行模式關(guān)閉文件
:q 不保存退出
?。簑q 保存并退出
:q! 不保存強(qiáng)制退出
?。簑 保存
:w!強(qiáng)制保存
?。簑q --> :x
2、編輯模式退出
ZZ 保存并退出
模式轉(zhuǎn)化1、編輯-->輸入
i:在當(dāng)前光標(biāo)所在字符的前面轉(zhuǎn)為輸入模式;
I:在當(dāng)前光標(biāo)所在字符的行首轉(zhuǎn)為輸入模式;
a:在當(dāng)前光標(biāo)所在字符的后面轉(zhuǎn)為輸入模式;
A:在當(dāng)前光標(biāo)所在字符的行尾轉(zhuǎn)為輸入模式;
o:在當(dāng)前光標(biāo)所在行的下面新建一行,轉(zhuǎn)為輸入模式;
O:在當(dāng)前光標(biāo)所在行的上面新建一行,轉(zhuǎn)為輸入模式;
2、輸入-->編輯
esc鍵
3、編輯-->末行
:
4、末行-->編輯
esc鍵
移動(dòng)光標(biāo)(編輯模式)1、逐字移動(dòng)光標(biāo)
h:左
l:右
j:下
k:上
#h:移動(dòng)#個(gè)字符
2、逐個(gè)單詞移動(dòng)
w:移到下一個(gè)單詞的詞首
e:移到當(dāng)前或者下個(gè)單詞的詞尾
b:移到當(dāng)前或者前一個(gè)單詞的詞首
#w:支持
3、行內(nèi)跳轉(zhuǎn)
0:跳到行首,絕對(duì)行首
^:跳到行首,行首的第一個(gè)非空白字符
$:跳到行尾,絕對(duì)行尾
4、行間跳轉(zhuǎn)
#G:跳轉(zhuǎn)至第#行
G:最后一行
末行模式下,直接給出行號(hào)回車即可
翻屏ctrl+f:向下翻一屏
ctrl+b:向上翻一屏
ctrl+d:向下翻半屏
ctrl+u:向上翻半屏
刪除單個(gè)字符x:刪除光標(biāo)所在處的單個(gè)字符
#x:刪除光標(biāo)所在處及向后的共#個(gè)字符
刪除命令 dd命令和跳轉(zhuǎn)命令組合使用
d$:刪除當(dāng)前光標(biāo)所在行光標(biāo)位置到行尾的所有字符。
d0:刪除當(dāng)前光標(biāo)所在行光標(biāo)位置到行首的所有字符。
dw
de
db
dd:刪除當(dāng)前光標(biāo)所在行
#d跳轉(zhuǎn)符:
末行模式
. 表示當(dāng)前行
$ 表示最后一行
+# 向下的#行
例如:
1,2d
.,$d
.,$-3d
粘貼命令 pp:如果刪除或復(fù)制為整行內(nèi)容,則粘貼至光標(biāo)所在行的下方,如果復(fù)制或刪除的內(nèi)容為非整行,則粘貼至光標(biāo)所在字符的后面。
P:如果刪除或復(fù)制為整行內(nèi)容,則粘貼至光標(biāo)所在行的上方,如果復(fù)制或刪除的內(nèi)容為非整行,則粘貼至光標(biāo)所在字符的前面。
復(fù)制命令 y用法同d命令
修改命令 c用法同d命令
替換 rr@:替換光標(biāo)所在位置的字符為@字符
撤銷 uu,連續(xù)u命令可以撤銷此前的n次操作,一般最多只保存有50次。
撤銷最近一次的撤銷操作:ctrl+r
可視化模式v:按字符選取
V:按矩形選取
選取后可以使用各種編輯命令,如d命令刪除。
查找/pattern:從當(dāng)前光標(biāo)所在位置開始向下查找。
?pattern:從當(dāng)前光標(biāo)所在位置開始向上查找。
n:后一條結(jié)果
N:前一條結(jié)果
查找替換在末行模式下使用s命令,用法和sed一樣
例如:
:.,$-1s/he/HE/g 替換當(dāng)前行到倒數(shù)第二行中所有he為HE 。
上面是常用的vim編輯器的使用方法,主要介紹了編輯模式下的命令。輸入模式下和nano功能差不多
1、關(guān)于文本編輯器;
文本編輯器有很多,比如圖形模式的gedit、kwrite、OpenOffice ... ... ,文本模式下的編輯器有vi、vim(vi的增強(qiáng)版本)和nano ... ... vi和vim是我們?cè)贚inux中最常用的編輯器。我們有必要介紹一下vi(vim)最簡(jiǎn)單的用法,以讓Linux入門級(jí)用戶在最短的時(shí)間內(nèi)學(xué)會(huì)使用它。
nano 工具和DOS操作系統(tǒng)下的edit操作相似,使用簡(jiǎn)單,我們不作介紹了,如果您有興趣,不妨嘗試一下;
2、vi 編輯器;
為什么要學(xué)會(huì)簡(jiǎn)單應(yīng)用vi
vi或vim是Linux最基本的文本編輯工具,vi或vim雖然沒有圖形界面編輯器那樣點(diǎn)鼠標(biāo)的簡(jiǎn)單操作,但vi編輯器在系統(tǒng)管理、服務(wù)器管理中,永遠(yuǎn)不是圖形界面的編輯器能比的。當(dāng)您沒有安裝X-windows桌面環(huán)境或桌面環(huán)境崩潰時(shí),我們?nèi)孕枰址J较碌木庉嬈鱲i;
vi或vim 編輯器在創(chuàng)建和編輯簡(jiǎn)單文檔最高效的工具;
3、vi 編輯器的使用方法;
3.1 如何調(diào)用vi ;
[root@localhost ~]# vi filename
~
~
~
~
~
~
~
~
3.2 vi 的三種命令模式;
Command(命令)模式,用于輸入命令;
Insert(插入)模式,用于插入文本;
Visual(可視)模式,用于視化的的高亮并選定正文;
3.3 文件的保存和退出;
Command 模式是vi或vim的默認(rèn)模式,如果我們處于其它命令模式時(shí),要通過ESC鍵切換過來。
當(dāng)我們按ESC鍵后,接著再輸入:號(hào)時(shí),vi會(huì)在屏幕的最下方等待我們輸入命令;
:w 保存;
:w filename 另存為filename;
:wq! 保存退出;
:wq! filename 注:以filename為文件名保存后退出;
:q! 不保存退出;
:x 應(yīng)該是保存并退出 ,功能和:wq!相同
3.4 光標(biāo)移動(dòng);
當(dāng)我們按ESC進(jìn)入Command模式后,我們可以用下面的一些鍵位來移動(dòng)光標(biāo);
j 向下移動(dòng)一行;
k 向上移動(dòng)一行;
h 向左移動(dòng)一個(gè)字符;
l 向右移動(dòng)一個(gè)字符;
ctrl+b 向上移動(dòng)一屏;
ctrl+f 向下移動(dòng)一屏;
向上箭頭 向上移動(dòng);
向下箭頭 向下移動(dòng);
向左箭頭 向左移動(dòng);
向右箭頭 向右移動(dòng);
我們編輯一個(gè)文件時(shí),對(duì)于 j、k、l和h鍵,還能在這些動(dòng)作命令的前面加上數(shù)字,比如 3j,表示向下移動(dòng)3行。
3.5 插入模式(文本的插入);
i 在光標(biāo)之前插入;
a 在光標(biāo)之后插入;
I 在光標(biāo)所在行的行首插入;
A 在光標(biāo)所在行的行末插入;
o 在光標(biāo)所在的行的上面插入一行;
O 在光標(biāo)所在的行的下面插入一行;
s 刪除光標(biāo)后的一個(gè)字符,然后進(jìn)入插入模式;
S 刪除光標(biāo)所在的行,然后進(jìn)入插入模式;
3.6 文本內(nèi)容的刪除操作;
x 一個(gè)字符;
#x 刪除幾個(gè)字符,#表示數(shù)字,比如3x;
dw 刪除一個(gè)單詞;
#dw 刪除幾個(gè)單詞,#用數(shù)字表示,比如3dw表示刪除三個(gè)單詞;
dd 刪除一行;
#dd 刪除多個(gè)行,#代表數(shù)字,比如3dd 表示刪除光標(biāo)行及光標(biāo)的下兩行;
d$ 刪除光標(biāo)到行尾的內(nèi)容;
J 清除光標(biāo)所處的行與上一行之間的空格,把光標(biāo)行和上一行接在一起;
3.7 恢復(fù)修改及恢復(fù)刪除操作;
u 撤消修改或刪除操作;
按ESC鍵返回Command(命令)模式,然后按u鍵來撤消刪除以前的刪除或修改;如果您想撤消多個(gè)以前的修改或刪除操作,請(qǐng)按多按幾次u。這和Word的撤消操作沒有太大的區(qū)別;
3.8 可視模式;
在最新的Linux發(fā)行版本中,vi提供了可視模式,因?yàn)檫@個(gè)功能是vim才有的。如果您用的vi沒有這個(gè)功能,就換成vim就有了。打開可視模式,按ESC鍵,然后按v就進(jìn)入可視模式;
可視模式為我們提供了極為友好的選取文本范圍,以高亮顯示;在屏幕的最下方顯示有;
-- 可視 --
或
--VISUAL--
如圖:
進(jìn)入可視模式,我們就可以用前面所說的命令行模式中的光標(biāo)移動(dòng)指令,可以進(jìn)行文本范圍的選取。
選取文本范圍有何用?
我們可以對(duì)某部份刪除作業(yè),按d鍵就刪除了我們選中的內(nèi)容。
選中內(nèi)容后,我們按y就表示復(fù)制;按d表示刪除;
值得一提是的刪除的同時(shí),也表示復(fù)制。我們返回到命令模式,然后移動(dòng)光標(biāo)到某個(gè)位置,然后按shift+p鍵,就把剛才刪除的內(nèi)容貼上了。我們先在這里提一句,在后文,我們還得詳細(xì)說說。
退出可視模式,還是用ESC鍵;
3.9 復(fù)制和粘帖的操作;
其實(shí)刪除也帶有剪切的意思,當(dāng)我們刪除文字時(shí),可以把光標(biāo)移動(dòng)到某處,然后按shift+p鍵就把內(nèi)容貼在原處,然后再移動(dòng)光標(biāo)到某處,然后再按p或shift+p又能貼上;
p 在光標(biāo)之后粘帖;
shift+p 在光標(biāo)之前粘帖
來舉一例:
比如我們想把一個(gè)文檔的第三行復(fù)制下來,然后帖到第五行的后面,我們應(yīng)該怎么做呢?
有兩種方法;
第一種方法:
先把第三行刪除,把光標(biāo)移動(dòng)到第三行處,然后用dd動(dòng)作,接著再按一下shift+p鍵。這樣就把剛才刪除的第三行帖在原處了。
接著我們?cè)儆胟鍵移動(dòng)光標(biāo)到第五行,然后再按一下p鍵,這樣就把第三行的內(nèi)容又帖到第五行的后面了;
第二種方法;
進(jìn)入可視模式,按ESC鍵,然后按v鍵。移動(dòng)鼠標(biāo)指針,選中第三行的內(nèi)容,然后按y鍵復(fù)制;再移動(dòng)指針到第五行,最后按p鍵;
所以復(fù)制和粘貼操作,是命令模式、插入模式及可視模式的綜合運(yùn)用;我們要學(xué)會(huì)各種模式之間的切換,要常用ESC鍵;更為重要的學(xué)會(huì)在命令模式下移動(dòng)光標(biāo);
3.10 關(guān)于行號(hào);
有時(shí)我們配置一個(gè)程序運(yùn)行時(shí),會(huì)出現(xiàn)配置文件X行出現(xiàn)錯(cuò)誤 。這時(shí)我們要用到行號(hào)相關(guān)的操作;
為所有內(nèi)容添加行號(hào);
按ESC鍵,然后輸入:
:set number
光標(biāo)所處位置
在屏幕的右下角,有類似如下的;
57,8 27%
在這之中,57表示第57行,8表示第8個(gè)字符;
3.11 查找和替換功能;
3.11.1 查找;
首先,我們要進(jìn)入ESC鍵,進(jìn)入命令模式;我們輸入/或?就進(jìn)入查找模式了;
/SEARCH 注:正向查找,按n鍵把光標(biāo)移動(dòng)到下一個(gè)符合條件的地方;
?SEARCH 注:反向查找,按shift+n 鍵,把光標(biāo)移動(dòng)到下一個(gè)符合條件的
舉一例:比如我想在一個(gè)文件中找到swap單詞,我應(yīng)該如下做;
首先按ESC鍵,進(jìn)入命令模式,然后輸入;
/swap
或
?swap
3.11.2 替換;
按ESC鍵進(jìn)入命令模式;
:s /SEARCH/REPLACE/g 注:把當(dāng)前光標(biāo)所處的行中的SEARCH單詞,替換成REPLACE,并把所有SEARCH高亮顯示;
:%s /SEARCH/REPLACE 注:把文檔中所有SEARCH替換成REPLACE;
:#,# s /SEARCH/REPLACE/g 注:#號(hào)表示數(shù)字,表示從多少行到多少行,把SEARCH替換成REPLACE;
注:在這之中,g表示全局查找;我們注意到,就是沒有替換的地方,也會(huì)把SEARCH高亮顯示;
舉例說明:
比如我們有一篇文檔要修改;
我們把光標(biāo)所在的行,把所有單詞the,替換成THE,應(yīng)該是:
:s /the/THE/g
我們把整篇文檔的所有的the都替換成THE,應(yīng)該是:
:%s /the/THE
我們僅僅是把第1行到第10行中的the,替換成THE,應(yīng)該是;
:1,10 s /the/THE/g
看過“vim編輯命令怎么使用”的人還看了: