vim 20條常用指令

1.  w [文件名]    相當於另存爲
2.  r [文件名]  將[文件名]的內容加到光標行後面
3.  n1,n2 w[filename] 將n1到n2的內容保存爲[filename]
4.  50dd      刪除50行     5x  刪除5個字符
5.  20下      向下移動20行  
6.  50G        移動到第50行   
7.  20右      向右移動20位
8.  /word     查找word字符串
9.  文本替換
 :50,100s/man/MAN/g      將50到100行之間的man 替換爲MAN
:s/str1/str2           替換當前行第一個 str1 爲 str2       --  s 代表當前行
:s/str1/str2/g       替換當前行中所有 str1 爲 str2       --  s 代表當前行    g表示 該行所有 global
:m,ns/str1/str2     替換第 n 行開始到最後一行中每一行的第一個 str1 爲 str2
:m,ns/str1/str2/g 替換第 n 行開始到最後一行中所有的 str1 爲 str2
:%s/str1/str2/g    替換文中所有 str1 爲 str2

10. u    恢復
11. nyy  複製 n行          p 粘貼
12. gg  第一行     G最後一行
 
13.:Tlist 打開函數列表  ctrl + ww 完成窗口切換,   關閉同樣 Tlist
複製 刪除  塊操作
v             字符選擇
V             行選擇
ctrl+v      塊選擇
y 複製   p 粘貼        d 刪除
 
14. 同時 打開多個文本
先打開一個, 命令行  sp自身的分開 
sp [filename]  再分開一個
Ctrl+w+ 上/下   切換窗口 
退出 分別 q
 
vim file1 file2
:n
:N 來後文件翻頁 
:f  顯示當前正在編輯的文檔名稱

15. vim全選並複製  /刪除
全部刪除:按esc後,然後dG
全部複製:按esc後,然後ggyG
 
16.  vim多行縮進技巧
 關鍵字: vim indent
按 v 進入visual狀態,選擇多行,用 '>'或'< '縮進或縮出
 
17、顯示 TAB 鍵  (方便在 python 中對 table 個數的觀察)
 文件中有 TAB 鍵的時候,你是看不見的。要把它顯示出來:
:set list
現在 TAB 鍵顯示爲 ^I,而 $顯示在每行的結尾,以便你能找到可能會被你忽略的空白字符在哪裏。
 
更改:
使用 ‘listchars’ 選項:
:set listchars=tab:>-,trail:-
現在,TAB會被顯示成 ">—" 而行尾多餘的空白字符顯示成 "-"。
 
18.  vim 多行註釋與 取消註釋
 
:20,30s/^/#  第20到30行用 # 註釋掉。   也可以用別的字符
:20,30s/^#//  取消註釋
對//或/* 可以用替換  :20,30s/\/\//   用/ (空) 替換 \\ ( \/\/ 中有兩個專業符'\')
:4,10s/^[^I ]\+// 去掉行首的空白字符
用 . 表示當前行。
: . ,30 s/^/#
可以看到 vim 命令針對當前行,在前面加個範圍就可以針對多行。
:co 12
把當前行 copy 到行 12 的地方。

19. 上述方法二
多行添加註釋
1). ctrl+v  visual block模式,選中註釋行
2). 大寫I,插入註釋符,例如//
3). 按esc鍵就會全部註釋了


取消多行註釋
1). ctrl+v  visual block模式,,選中刪除列
2).d 刪除該列即可


20. vim中調用shell命令

:!command
不退出vim,並執行shell命令command,將命令輸出顯示在vim的命令區域,不會改變當前編輯的文件的內容
例:
1) :r !command
將shell命令command的結果插入到當前行的下一行

:r !date 
讀取系統時間並插入到當前行的下一行。


2) 起始行號,結束行號 !command
將起始行號和結束行號指定的範圍中的內容輸入到shell命令command處理,並將處理結果替換起始行號和結束行號指定的範圍中的內容
例如  :62,72 !sort,將62行到72行的內容進行排序

:62 !tr [a-z] [A-Z],將62行的小寫字母轉爲大寫字母


3):起始行號,結束行號 w !command
將起始行號和結束行號所指定的範圍的內容作爲命令command的輸入。不會改變當前編輯的文件的內容

例    :62,72 w !sort,將62行到72行的內容進行排序,但排序的結果並不會直接輸出到當前編輯的文件中,而是顯示在vim敲命令的區域


轉自:http://blog.csdn.net/youxin2012/article/details/38980533



發佈了24 篇原創文章 · 獲贊 2 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章