Vim基本使用方法

為什么要學習Vim轧叽,Vim和Vi的區(qū)別苗沧,Vim的基本使用方法(部分)

為什么很多大型網站都采用Linux作為服務器


1. 為什么要學習Vim炭晒,是為了裝B嗎待逞?

在Windows操作系統(tǒng)橫行的今天,為什么要學習使用Vim這樣需要各種快捷鍵的文本編輯器呢网严?

大型網站的服務器一般是無圖形化界面的Linux系統(tǒng)识樱,當需要進行調試、遠程處理問題的時候震束,只能調出terminal(終端窗口)怜庸,然后用命令"vim index.html"這樣的方式,調出vim編輯器垢村,再進行更改割疾。


引申:

為什么大型網站選擇使用Linux作為服務器系統(tǒng),知乎上的yegle大神給出了個人感覺很中肯的回答嘉栓,Linux 作為服務器操作系統(tǒng)的優(yōu)勢是什么宏榕?


2. Vim和Vi的區(qū)別

Vim是Vi的升級版本,Vim不僅兼容所有的Vi語法胸懈,還加入一些新的特性在里面担扑,如:語法高亮、可視化操作趣钱、多平臺支持(終端涌献、Windows、MacOS等)首有⊙嗬總之,學習好Vi井联,就學會了Vim卜壕。

vim編輯器是所有Unix及Linux系統(tǒng)下標準的編輯器,它的強大不遜色于任何最新的文本編輯器烙常,這里只是簡單地介紹一下它的用法和一小部分指令轴捎。由于對Unix及 Linux系統(tǒng)的任何版本,vim編輯器是完全相同的蚕脏,因此您可以在其他任何介紹vi的地方進一步了解它侦副。Vim也是Linux中最基本的文本編輯器,學會它后驼鞭,您將在Linux的世界里暢行無阻秦驯。


3. Vim快捷鍵練習利器----VimTutor

Vimtutor是新手可以快速入門Vim的一個Vim內置應用,直接在Vim命令行下挣棕,敲Vimtutor译隘,回車即可進入練習亲桥。


4. Vim的三種模式

Vim可以分為三種模式,分別為:

命令行模式(Command mode)

插入模式(Insert mode)

底行模式(Lastline mode)

命令行模式

控制屏幕光標的移動固耘,字符题篷、字或行的刪除,移動復制某區(qū)段及進入Insert mode下玻驻,或者到 last line mode悼凑。

插入模式

只有在Insert mode下,才可以做文字輸入璧瞬,按「ESC」鍵可回到命令行模式。

底行模式

將文件保存或退出vim渐夸,也可以設置編輯環(huán)境嗤锉,如尋找字符串、列出行號……等墓塌。

不過瘟忱,一般我們在使用時把vi簡化成兩個模式,就是將底行模式(last line mode)也算入命令行模式command mode)苫幢。


5. Vim的基本操作

a) 進入Vim

在系統(tǒng)光標提示符后访诱,輸入vim及文件名后,回車韩肝,進入Vim編輯畫面触菜。


特別注意,進入vim之后哀峻,是處于「命令行模式(command mode)」涡相,要切換到「插入模式(Insert mode)」才能夠輸入文字。

b) 切換至插入模式(Insert mode)編輯文件

「命令行模式(command mode)」按一下字母「i」就可以進入「插入模式(Insert mode)」剩蟀,這時候你就可以開始輸入文字了催蝗。

c) 插入模式(Insert mode)切換到命令行模式(Command mode)

在插入模式下,按一下「ESC」鍵即可育特。

d) 退出vim及保存文件?

在命令行模式(Command mode)下丙号,按冒號「:」鍵,進入底行模式(Last Line mode)

常見底行模式下的命令行:

:w filename 文件以filename為文件名保存

:wq 文件存盤并退出vim

:q 文件不存盤并退出vim

:q! 文件不存盤強制退出vim


6. 命令行模式下的功能鍵(部分)

a) 從命令行模式切換為插入模式的三種方式

「 i 」:從當前光標位置進入插入模式

「 a 」:從當前光標位置的下一個字符進入插入模式

「 o 」:從當前光標位置的下一行進入插入模式

b) 從插入模式切換為命令行模式

按「ESC」鍵?

c) 移動光標

vi可以直接用鍵盤上的光標來上下左右移動缰冤,但正規(guī)的vi是用小寫英文字母「h」犬缨、「j」、「k」锋谐、「l」遍尺,分別控制光標左、下涮拗、上乾戏、右移一格迂苛。

d) 行尾追加

不管光標在該行的什么位置,直接按大寫字母「A」即可

e) 刪除單詞

dw:把光標停留在需要刪除的單詞前面鼓择,依次按下「d」「w」三幻,即可

de:把光標停留在需要刪除的單詞前面(無視單詞前面的空格),依次按下「d」「e」呐能,即可

f) 從當前光標處刪除到行末

把光標停留在需要刪除的句子前面念搬,依次按下「d」「$」,即可

g) 快速跳轉到行首

按下數字「0」摆出,即可

h) 使用計數以刪除單詞

示例:this ABC DE line FGHI JK LMN OP of words is Q RS TUV cleaned up.

依次將鼠標定位到ABC前朗徊,按「d」「2」「w」,可以刪除:ABC DE

將鼠標定位到FGHI前偎漫,按「d」「4」「w」爷恳,可以刪除:FGHI JK LMN OP

將鼠標定位到Q前,按「d」「3」「w」象踊,可以刪除:Q RS TUV

得到句子:

this line of words is cleaned up.

i) 刪除當前行

鑒于刪除當前行這一操作的高頻性温亲,vim設計者簡化了快捷鍵,按「d」「d」即可杯矩。

連續(xù)刪除兩行栈虚,從當前行開始,則為:「2」「d」「d」

j) 撤銷更改

a. 按小寫字母「u」史隆,撤銷上一步的更改操作魂务;

b. 按大寫字母「U」,撤銷整行的更改操作逆害;

c. 「Ctrl+R」撤銷上一步「撤銷操作」头镊。

k) 將剛刪除的內容置入其他行

之前剛剛刪除的內容,會放入Vim編輯器的寄存器中魄幕∠嗤В基于如此原理,可以將之認為成Windows操作系統(tǒng)的「剪切」操作纯陨。

先在想刪除的行坛芽,按「d」「d」,進行刪除操作翼抠;

再在想插入那行的前一行按「p」鍵即可咙轩。

l) 替換

將光標放到需要改的字符前,先按「r」鍵阴颖,再輸入想更改的字符即可活喊。

m) 跳轉

頂部跳轉命令:先按「Control」+「g」鍵,在終端底部調出一欄量愧,然后輸入「g」「g」即可钾菊;

底部跳轉命令:先按「Control」+「g」鍵帅矗,在終端底部調出一欄,然后輸入大寫字母「g」即可煞烫;

特定行跳轉命令:直接輸入行號浑此,然后輸入大寫字母「g」即可。

n) 查找命令

字符串查找:

輸入英文斜杠「/」滞详,后面緊接需要搜索的字符串即可凛俱。

查找下一個相同字符串,就緊接著按小寫字母「n」料饥;

查找上一個相同字符串蒲犬,就緊接著按大寫字母「N」。

配對括號查找:

在編程語言里岸啡,配對括號「 ( 」「 ) 」「 { 」「 } 」很常見暖哨,當定位到一個配對括號的一半時(注意光標要定位在該括號之前),按「%」凰狞,即可自動跳轉到與之匹配的第一個配對括號處。

o) 替換字符串

當前行替換命令

在標準命令行模式下沛慢,光標定位到當前行赡若,按英文冒號「 :」,再輸入s/oldstring/newstring/g 回車团甲,即可逾冬。

完整語句為:

:s/dogg/dog/g

特定幾行替換命令

在標準命令行模式下,按英文冒號「 :」躺苦,再輸入#,#s/oldstring/newstring/g 回車身腻,即可(其中#代表特定的首尾兩行的行號)。

完整語句為:

:5,8s/dogg/dog/g

全文替換命令

在標準命令行模式下匹厘,按英文冒號「 :」嘀趟,再輸入%s/oldstring/newstring/g 回車,即可(其中#代表特定的首尾兩行的行號)愈诚。

完整語句為:

:%s/dogg/dog/g

全文替換命令(每個匹配項替換前需確認)

在標準命令行模式下她按,按英文冒號「 :」,再輸入%s/oldstring/newstring/gc?回車炕柔,即可(其中#代表特定的首尾兩行的行號)酌泰。

完整語句為:

:%s/dogg/dog/gc

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市匕累,隨后出現的幾起案子陵刹,更是在濱河造成了極大的恐慌,老刑警劉巖欢嘿,帶你破解...
    沈念sama閱讀 222,000評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件衰琐,死亡現場離奇詭異也糊,居然都是意外死亡,警方通過查閱死者的電腦和手機碘耳,發(fā)現死者居然都...
    沈念sama閱讀 94,745評論 3 399
  • 文/潘曉璐 我一進店門显设,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人辛辨,你說我怎么就攤上這事蹂窖。” “怎么了遥皂?”我有些...
    開封第一講書人閱讀 168,561評論 0 360
  • 文/不壞的土叔 我叫張陵叶眉,是天一觀的道長。 經常有香客問我僻焚,道長允悦,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,782評論 1 298
  • 正文 為了忘掉前任虑啤,我火速辦了婚禮隙弛,結果婚禮上,老公的妹妹穿的比我還像新娘狞山。我一直安慰自己全闷,他們只是感情好,可當我...
    茶點故事閱讀 68,798評論 6 397
  • 文/花漫 我一把揭開白布萍启。 她就那樣靜靜地躺著总珠,像睡著了一般。 火紅的嫁衣襯著肌膚如雪勘纯。 梳的紋絲不亂的頭發(fā)上局服,一...
    開封第一講書人閱讀 52,394評論 1 310
  • 那天,我揣著相機與錄音驳遵,去河邊找鬼淫奔。 笑死,一個胖子當著我的面吹牛超埋,可吹牛的內容都是我干的搏讶。 我是一名探鬼主播,決...
    沈念sama閱讀 40,952評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼霍殴,長吁一口氣:“原來是場噩夢啊……” “哼媒惕!你這毒婦竟也來了?” 一聲冷哼從身側響起来庭,我...
    開封第一講書人閱讀 39,852評論 0 276
  • 序言:老撾萬榮一對情侶失蹤妒蔚,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發(fā)現了一具尸體肴盏,經...
    沈念sama閱讀 46,409評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡科盛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,483評論 3 341
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現自己被綠了菜皂。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片贞绵。...
    茶點故事閱讀 40,615評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖恍飘,靈堂內的尸體忽然破棺而出榨崩,到底是詐尸還是另有隱情,我是刑警寧澤章母,帶...
    沈念sama閱讀 36,303評論 5 350
  • 正文 年R本政府宣布母蛛,位于F島的核電站,受9級特大地震影響乳怎,放射性物質發(fā)生泄漏彩郊。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,979評論 3 334
  • 文/蒙蒙 一蚪缀、第九天 我趴在偏房一處隱蔽的房頂上張望秫逝。 院中可真熱鬧,春花似錦询枚、人聲如沸筷登。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,470評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至狈醉,卻和暖如春廉油,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背苗傅。 一陣腳步聲響...
    開封第一講書人閱讀 33,571評論 1 272
  • 我被黑心中介騙來泰國打工抒线, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人渣慕。 一個月前我還...
    沈念sama閱讀 49,041評論 3 377
  • 正文 我出身青樓嘶炭,卻偏偏與公主長得像,于是被迫代替她去往敵國和親逊桦。 傳聞我的和親對象是個殘疾皇子眨猎,可洞房花燭夜當晚...
    茶點故事閱讀 45,630評論 2 359

推薦閱讀更多精彩內容

  • Vim幾句話介紹Vim是Unix系統(tǒng)上的文本編輯軟件(你該不會不知道什么是文本編輯軟件吧!)强经,在windows上也...
    何必遠方閱讀 3,152評論 0 3
  • 命令歷史 以:和/開頭的命令都有歷史紀錄睡陪,可以首先鍵入:或/然后按上下箭頭來選擇某個歷史命令。 啟動vim 在命令...
    im螞蟻閱讀 30,764評論 3 48
  • dpkg 學習 安裝mysql apt-get install mysql-server-5.6 apt-get ...
    sharonji閱讀 438評論 0 0
  • 支持text文本根據內容顯示,顯示不了的進行滾動顯示http://www.cnblogs.com/Cocomo/p...
    好怕怕閱讀 2,204評論 1 2
  • 轉眼間涡拘,大學的第一個學期就要結束,時間總是在不經意間就這樣偷偷的溜走据德。大學和我無數次憧憬的不太一樣鳄乏,開學前定...
    亞瑋呀閱讀 2,704評論 7 6