day07 文件編輯vim

今日內(nèi)容

? ? ? ? VIM普通模式

? ? ? ? VIM編輯模式

? ? ? ? VIM命令模式

? ? ? ? VIM視圖模式

? ? ? ? VIM擴(kuò)展知識

?1.什么是VIM?

? ? ? ? 和Windows的記事本或Word文檔很像力九,都是用來編輯文件的胜臊。

?2.VI與VIM 有什么區(qū)別

? ??????vi和vim都是文本編輯器钟沛,只不過vim是vi的增強(qiáng)版,比vi多了語法高亮顯示丛晦,其他編輯功能? ??????幾乎無差,所以使用vi還是vim取決個(gè)人習(xí)慣办铡。(相當(dāng)于windows系統(tǒng)下的文本編輯軟件“記事? ??????本”與"notepad++"的區(qū)別)? ???PS:可以使用yum install vim -y安裝vim

?3.如何使用vim疾嗅? 它有四種模式

????????小結(jié):vim編輯打開文件整體流程如下:

? ? ? ? 1.默認(rèn)打開文件處于普通模式

? ? ? ? 2.從普通模式切換至編輯模式需要使用a,i,o

? ? ? ? 3.編輯模式修改完畢后需要先按ESC返回普通模式

? ? ? ? 4.在普通模式輸入":"或"/"進(jìn)入命令模式豪嗽,可實(shí)現(xiàn)文件的保存退出

? ? ? ? PS:在vim中谴蔑,無法直接從編輯模式切換到命令模式

? ? ?VIM普通模式

? ? ? ? ? #1.命令光標(biāo)跳轉(zhuǎn)

? ? ? ? ? G?#光標(biāo)跳轉(zhuǎn)至末端?

? ? ? ? ? gg#光標(biāo)跳轉(zhuǎn)至頂端?

? ? ? ? ? Ngg#光標(biāo)跳轉(zhuǎn)至當(dāng)前文件內(nèi)的N行

? ? ? ? ? $?#光標(biāo)跳轉(zhuǎn)至當(dāng)前光標(biāo)所在行的尾部?

? ? ? ? ? ^|0#光標(biāo)跳轉(zhuǎn)至當(dāng)前光標(biāo)所在行的首部

? ? ? ? ? #2.文件內(nèi)容較多

? ? ? ? ? ?ctrl+f #往下翻頁(行比較多)

? ? ? ? ? ?ctrl+b #往上翻頁? ??

? ? ? ? ? #3.復(fù)制與粘貼yy? ?p

? ? ? ? ? yy#復(fù)制當(dāng)前光標(biāo)所在的行??

? ? ? ? ? 5yy#復(fù)制當(dāng)前光標(biāo)以及光標(biāo)向下4行

????????????????p(小寫)? #粘貼至當(dāng)前光標(biāo)下一行?

? ? ? ? ? ? ? ? P(大寫)? #粘貼至當(dāng)前光標(biāo)上一行

? ? ? ? ? #4.刪除豌骏、剪貼、撤銷? ? ? ??

? ? ? ? ? dd#刪除當(dāng)前光標(biāo)所在的行?

? ? ? ? ? 4dd#刪除當(dāng)前光標(biāo)所在的行以及往下的3行

? ? ? ? ? ?dG#刪除當(dāng)前光標(biāo)及以后的所有行

? ? ? ? ? D#刪除當(dāng)前光標(biāo)及光標(biāo)以后的內(nèi)容??

? ? ? ? ? x #刪除當(dāng)前光標(biāo)標(biāo)記往后的字符? ? ? ?

? ? ? ? ? dd & p? #剪貼隐锭、先刪除dd(number dd)窃躲,后粘貼p? ? ? ?

? ? ? ? ? u #撤銷上一次的操作?

? ? ? ? ? #5.替換

????????????r? ? ? #替換當(dāng)前光標(biāo)標(biāo)記的單個(gè)字符? ? ??

? ? ? ? ? ? R#進(jìn)入REPLACE模式, 連續(xù)替換,ESC結(jié)束

? VIM編輯模式

? ? ?2.編輯模式(從普通模式進(jìn)入到編輯模式)

????????i #進(jìn)入編輯模式钦睡,光標(biāo)不做任何操作

????????a #進(jìn)入編輯模式蒂窒,將當(dāng)前光標(biāo)往后一位

????????o #進(jìn)入編輯模式,并在當(dāng)前光標(biāo)下添加一行空白內(nèi)容?

? ? ? ? I? #進(jìn)入編輯模式荞怒,并且光標(biāo)會跳轉(zhuǎn)至本行的頭部

? ? ? ? A? #進(jìn)入編輯模式洒琢,將光標(biāo)移動至本行的尾部

????????O? #進(jìn)入編輯模式,并在當(dāng)前光標(biāo)上添加一行空白內(nèi)容

? VIM命令模式

? ? ? ? 3.命令模式褐桌,主要用于搜索衰抑,保存,退出文件

? ??????#1.文件保存與退出:w 保存當(dāng)前狀態(tài)

????????:w!? ? 強(qiáng)制保存當(dāng)前狀態(tài)

????????:q? ? ? 退出當(dāng)前文檔(文檔必須保存才能退出)

????????:q!? ? 強(qiáng)制退出文檔不會修改當(dāng)前內(nèi)容

????????:wq? ? 先保存荧嵌,在退出

????????:wq!? ? 強(qiáng)制保存并退出

????????:x? ? ? 先保存呛踊,在退出

????????ZZ? ? ? 保存退出, shfit+zz

????????:number 跳轉(zhuǎn)至對應(yīng)的行號

? ?#文件保存? ? ?:wq? ?保存并退出? ? :wq!? ?強(qiáng)制保存并退出

? ??????#2.文件內(nèi)容查找/string #需要搜索的內(nèi)容(查找)

????????n #按搜索到的內(nèi)容依次往下進(jìn)行查找

? ? ? ? N #按搜索到的內(nèi)容依次往上進(jìn)行查找

#3.文件內(nèi)容替換

? ??????:1,5s#sbin#test#g? ? ?#替換1-5行中包含sbin的內(nèi)容為test

????????:%s#sbin#test#g #替換整個(gè)文本文件中包含sbin的替換為test

#4.文件內(nèi)容另存

? ??????:w /root/test.txt #將所有內(nèi)容另存為/root/test.txt文件中

VIM視圖模式

? ? ? ? 4.視圖模式(從普通模式進(jìn)入視圖模式),主要進(jìn)行批量操作

? ??????ctrl+v 進(jìn)入可視塊模式啦撮,選中需要注釋的行

? ? ? ? 1.插入:按shift+i進(jìn)入編輯模式,輸入#,結(jié)束按ESC鍵? ? 2.刪除:選中內(nèi)容后谭网,按x或者d鍵刪除

? ????? 3.替換:選中需要替換的內(nèi)容, 按下r鍵,然后輸入替換后的內(nèi)容

? ? ? ? ?shift+v 進(jìn)入可視行模式,選中整行內(nèi)容

? ? ????1.復(fù)制:選中行內(nèi)容后按y鍵及可復(fù)制赃春。

? ? ? ? ?2.刪除:選中行內(nèi)容后按d鍵刪除愉择。

VIM擴(kuò)展知識

? ? ? ? 1.環(huán)境變量臨時(shí)生效

? ??????:set nu #顯示行號

????????:set ic #忽略大小寫, 在搜索的時(shí)候有用

????????:set ai #自動縮進(jìn)

????????:set list #顯示制表符(空行、tab鍵)

????????:set no[nu|ic|ai…] #取消臨時(shí)設(shè)定的變量

? ? ? ? 2.環(huán)境變量永久生效织中。~/.vimrc 個(gè)人環(huán)境變量(優(yōu)先級高) /etc/vimrc 全局環(huán)境變量

? ??????# vim ~/.vimrc #當(dāng)下次再打開文件自動顯示行號并忽略大小寫

? ? ? ? ?set nu

? ? ? ? ?set ic

? ? ? ? ?#如果個(gè)人vim環(huán)境沒有配置, 則使用全局vim環(huán)境變量配置锥涕。#如果個(gè)人vim環(huán)境和全局環(huán)境變量產(chǎn)生沖突, 優(yōu)先使用個(gè)人vim環(huán)境變量。

? ? ? ? ? ?3.如何同時(shí)編輯多個(gè)文件

? ??????????vim -o file1 file2 #水平分割

????????????vim -O file1 file2 #垂直分割

????????????#ctrl+ww 文件間切換

? ? ? ? ? ? 4.相同文件之間差異對比抠璃,通常用于對比修改前后差異

? ??????????# diff #文件對比?

?????????????# vimdiff #以vim方式打開兩個(gè)文件對比站楚,高亮顯示不同的內(nèi)容

? ? ? ? ? ? 5.如果VIM非正常退出(Ctrl+Z)掛起或強(qiáng)制退出終端沒關(guān)閉VIM后

? ??????????#假設(shè)打開filename文件被以外關(guān)閉,需要刪除同文件名的.swp文件即可解決

????????????# rm -f .filename.swp

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末搏嗡,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子拉一,更是在濱河造成了極大的恐慌采盒,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,807評論 6 518
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蔚润,死亡現(xiàn)場離奇詭異磅氨,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)嫡纠,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,284評論 3 399
  • 文/潘曉璐 我一進(jìn)店門烦租,熙熙樓的掌柜王于貴愁眉苦臉地迎上來延赌,“玉大人,你說我怎么就攤上這事叉橱〈煲裕” “怎么了?”我有些...
    開封第一講書人閱讀 169,589評論 0 363
  • 文/不壞的土叔 我叫張陵窃祝,是天一觀的道長掐松。 經(jīng)常有香客問我,道長粪小,這世上最難降的妖魔是什么大磺? 我笑而不...
    開封第一講書人閱讀 60,188評論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮探膊,結(jié)果婚禮上杠愧,老公的妹妹穿的比我還像新娘。我一直安慰自己逞壁,他們只是感情好殴蹄,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,185評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著猾担,像睡著了一般袭灯。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上绑嘹,一...
    開封第一講書人閱讀 52,785評論 1 314
  • 那天稽荧,我揣著相機(jī)與錄音,去河邊找鬼工腋。 笑死姨丈,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的擅腰。 我是一名探鬼主播蟋恬,決...
    沈念sama閱讀 41,220評論 3 423
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼趁冈!你這毒婦竟也來了歼争?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,167評論 0 277
  • 序言:老撾萬榮一對情侶失蹤渗勘,失蹤者是張志新(化名)和其女友劉穎沐绒,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體旺坠,經(jīng)...
    沈念sama閱讀 46,698評論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡乔遮,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,767評論 3 343
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了取刃。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蹋肮。...
    茶點(diǎn)故事閱讀 40,912評論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡出刷,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出坯辩,到底是詐尸還是另有隱情馁龟,我是刑警寧澤,帶...
    沈念sama閱讀 36,572評論 5 351
  • 正文 年R本政府宣布濒翻,位于F島的核電站屁柏,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏有送。R本人自食惡果不足惜淌喻,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,254評論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望雀摘。 院中可真熱鬧裸删,春花似錦、人聲如沸阵赠。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,746評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽清蚀。三九已至匕荸,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間枷邪,已是汗流浹背榛搔。 一陣腳步聲響...
    開封第一講書人閱讀 33,859評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留东揣,地道東北人践惑。 一個(gè)月前我還...
    沈念sama閱讀 49,359評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像嘶卧,于是被迫代替她去往敵國和親尔觉。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,922評論 2 361