碼農(nóng)的世界里,流傳兩大神器的故事:Emacs是神的編輯器,而Vim是編輯器之神。這里就用最簡(jiǎn)方法介紹一下vim/vi的操作,給我五分鐘,你就可以上手編輯文本文件了。
vi的啟動(dòng)(編輯yourfile.py文件)
$ vi yourfile.py
vi的三種模式
- 命令模式(可以移動(dòng)光標(biāo),翻頁(yè),刪除等)
- 編輯模式(可以輸入新的內(nèi)容,對(duì)新輸入內(nèi)容進(jìn)行修改)
- 命令行模式(也叫尾行模式,可以進(jìn)行文件操作,配置,退出等)
三種狀態(tài)的轉(zhuǎn)換:
- 命令模式 --> 編輯模式( i-在光標(biāo)前開(kāi)始插入, a-在光標(biāo)后開(kāi)始插入, o-在本行下面開(kāi)始新的一行 ,還有I,A,O等命令自行學(xué)習(xí))
- 命令模式 --> 編輯模式 ( Esc鍵 )
- 命令模式 --> 命令行模式 ( 按冒號(hào) : )
- 命令行模式 --> 命令模式 (命令行執(zhí)行完成,或按 Esc鍵)
常用命令行
- :w 保存
- :x 保存并退出
- :q! 不保存退出
- :set nu 顯示行號(hào)
- :n 定位到第n行,n為大于0的整數(shù)
- :$ 定位到最后一行
- :m,ncox 將第m行到第n行內(nèi)容復(fù)制到第x行后面,m,n,x為大于0的整數(shù)
- :m,nmx 將第m行到第n行內(nèi)容移動(dòng)到第x行后面,m,n,x為大于0的整數(shù)
- :m,nd 將第m行到第n行內(nèi)容刪除,m,n為大于0的整數(shù)
- :%s/aaa/AAAA/g 全文搜索aaa,并將之替換為AAAA
常用命令
- h,j,k,l 左,上,下,右移動(dòng)光標(biāo)
- x 刪除光標(biāo)所在字符
- r 替換光標(biāo)所在字符
- dd 刪除光標(biāo)所在行
- ^ 定位到行首
- $ 定位到行尾
- J 將光標(biāo)所在行與下一行連接為一行
特別提醒
- 所有輸入命令為英文半角字母或標(biāo)點(diǎn),并區(qū)分大小寫(xiě)
- 不確認(rèn)所處三種模式時(shí),可以多次按 Esc鍵 返回到命令模式。
人生苦短,我用Python。
徒步學(xué)天下( hhxx2014@qq.com)
2017年6月25日于中國(guó)林都