Linux上vi(vim)編輯器使用教程
vi(vim)是上Linux非常常用的編輯器,很多Linux發(fā)行版都默認(rèn)安裝了vi(vim)。vi(vim)命令繁多但是如果使用靈活之后將會(huì)大大提高效率。vi是“visual interface”的縮寫(xiě),vim是vi IMproved(增強(qiáng)版的vi)。在一般的系統(tǒng)管理維護(hù)中vi就夠用,如果想使用代碼加亮的話可以使用vim。下面vps偵探整理一下vi的使用教程:包含vi的基本介紹、使用模式、文件的打開(kāi)關(guān)閉保存、插入文本或新建行、移動(dòng)光標(biāo)、刪除、恢復(fù)字符或行、搜索等等,算是一篇比較適合新手學(xué)習(xí)vi的教程。
vi有3個(gè)模式:插入模式、命令模式、低行模式。
插入模式:在此模式下可以輸入字符,按ESC將回到命令模式。
命令模式:可以移動(dòng)光標(biāo)、刪除字符等。
低行模式:可以保存文件、退出vi、設(shè)置vi、查找等功能(低行模式也可以看作是命令模式里的)。
一、打開(kāi)文件、保存、關(guān)閉文件(vi命令模式下使用)
vi filename ? ? ? //打開(kāi)filename文件
:w ? ? ? //保存文件
:w vpser.net //保存至vpser.net文件
:q ? ? ? ? ?//退出編輯器,如果文件已修改請(qǐng)使用下面的命令
:q! ? ? ? ?//退出編輯器,且不保存
:wq ? ? ? ? //退出編輯器,且保存文件
二、插入文本或行(vi命令模式下使用,執(zhí)行下面命令后將進(jìn)入插入模式,按ESC鍵可退出插入模式)
a ? ? ?//在當(dāng)前光標(biāo)位置的右邊添加文本
i ? ? ??//在當(dāng)前光標(biāo)位置的左邊添加文本
A ? ? //在當(dāng)前行的末尾位置添加文本
I ? ? ?//在當(dāng)前行的開(kāi)始處添加文本(非空字符的行首)
O ? ? //在當(dāng)前行的上面新建一行
o ? ? //在當(dāng)前行的下面新建一行
R ? ?//替換(覆蓋)當(dāng)前光標(biāo)位置及后面的若干文本
J ? ?//合并光標(biāo)所在行及下一行為一行(依然在命令模式)
三、移動(dòng)光標(biāo)(vi命令模式下使用)
1、使用上下左右方向鍵
2、命令模式下:h ? 向左、j ? 向下 、k ? 向上、l ?向右。
空格鍵 向右、Backspace ?向左、Enter ?移動(dòng)到下一行首、- ?移動(dòng)到上一行首。
四、刪除、恢復(fù)字符或行(vi命令模式下使用)
x ? ? ? ? //刪除當(dāng)前字符
nx ? ? ? ? //刪除從光標(biāo)開(kāi)始的n個(gè)字符
dd ? ? ?//刪除當(dāng)前行
ndd ? //向下刪除當(dāng)前行在內(nèi)的n行
u ? ? ? //撤銷(xiāo)上一步操作
U ? ? ?//撤銷(xiāo)對(duì)當(dāng)前行的所有操作
五、搜索(vi命令模式下使用)
/vpser ? ? //向光標(biāo)下搜索vpser字符串
?vpser ? ? //向光標(biāo)上搜索vpser字符串
n ? ? ? ? ? //向下搜索前一個(gè)搜素動(dòng)作
N ? ? ? ? //向上搜索前一個(gè)搜索動(dòng)作
六、跳至指定行(vi命令模式下使用)
n+ ? ? ? ?//向下跳n行
n- ? ? ? ? //向上跳n行
nG ? ? ? ?//跳到行號(hào)為n的行
G ? ? ? ? ? //跳至文件的底部
七、設(shè)置行號(hào)(vi命令模式下使用)
:set ?nu ? ? //顯示行號(hào)
:set nonu ? ?//取消顯示行號(hào)
八、復(fù)制、粘貼(vi命令模式下使用)
yy ? ?//將當(dāng)前行復(fù)制到緩存區(qū),也可以用 "ayy 復(fù)制,"a 為緩沖區(qū),a也可以替換為a到z的任意字母,可以完成多個(gè)復(fù)制任務(wù)。
nyy ? //將當(dāng)前行向下n行復(fù)制到緩沖區(qū),也可以用 "anyy 復(fù)制,"a 為緩沖區(qū),a也可以替換為a到z的任意字母,可以完成多個(gè)復(fù)制任務(wù)。
yw ? ?//復(fù)制從光標(biāo)開(kāi)始到詞尾的字符。
nyw ? //復(fù)制從光標(biāo)開(kāi)始的n個(gè)單詞。
y^ ? ? ?//復(fù)制從光標(biāo)到行首的內(nèi)容。? VPS偵探
y$ ? ? ?//復(fù)制從光標(biāo)到行尾的內(nèi)容。
p ? ? ? ?//粘貼剪切板里的內(nèi)容在光標(biāo)后,如果使用了前面的自定義緩沖區(qū),建議使用"ap 進(jìn)行粘貼。
P ? ? ? ?//粘貼剪切板里的內(nèi)容在光標(biāo)前,如果使用了前面的自定義緩沖區(qū),建議使用"aP 進(jìn)行粘貼。
九、替換(vi命令模式下使用)
:s/old/new ? ? ?//用new替換行中首次出現(xiàn)的old
:s/old/new/g ? ? ? ??//用new替換行中所有的old
:n,m?s/old/new/g ? ? //用new替換從n到m行里所有的old
:%s/old/new/g ? ? ?//用new替換當(dāng)前文件里所有的old
十、編輯其他文件
:e otherfilename ? ?//編輯文件名為otherfilename的文件。
十一、修改文件格式
:set fileformat=unix ? //將文件修改為unix格式,如win下面的文本文件在linux下會(huì)出現(xiàn)^M。
總結(jié):vi(vim)教程雖然有比較多的命令,但是只要勤加練習(xí),相信你會(huì)很快的熟練掌握,同時(shí)也會(huì)給你的工作或?qū)W習(xí)帶來(lái)更高的效率。當(dāng)如果不知道自己處在什么模式時(shí)可以按2次Esc鍵即可回到命令模式,會(huì)有最后提醒一點(diǎn):注意大小寫(xiě)!!!
如有問(wèn)題歡迎在本文留言或到VPS論壇交流。
原創(chuàng)文章,轉(zhuǎn)載需作者同意,且必須以鏈接形式注明出處。
>>轉(zhuǎn)載請(qǐng)注明出處:VPS偵探 本文鏈接地址:http://m.0794baidu.com/manage/vi.html










@盧杰, 頂部留言板或關(guān)于中有說(shuō)明
有沒(méi)有交流群和客服QQ號(hào)
@Hysen, 相當(dāng)于另存為 vpser.net 名字的文件
:w //保存文件
:w vpser.net //保存至vpser.net文件
請(qǐng)教這里的兩個(gè) :w 是筆誤? 還是網(wǎng)站設(shè)置.
vi全部加起來(lái)有十頁(yè)紙啊
收藏轉(zhuǎn)載到自己的tumblr做備份-3-
呵呵,不錯(cuò),支持一下。 ?? ?? ?? ?? ?? ?? ?? ??
打印下來(lái),慢慢研究,謝謝了
?? ?? 謝謝,分享下。
收藏,轉(zhuǎn)載啦 ?? ??
我第一次接觸vim,看了這個(gè),收獲頗大,站長(zhǎng)方便的話可以再多寫(xiě)供我們學(xué)習(xí),或者介紹一些好文章。謝謝啦
@囧啊囧, 可以
?? ?? 我想轉(zhuǎn)載,你不同意我就不轉(zhuǎn)了。
以前在大貓那里看過(guò)一篇了,再學(xué)習(xí)一下。
收藏之,不妨請(qǐng)vimer.cn 站長(zhǎng)再寫(xiě)一篇更詳細(xì)的 introduction