vim編輯器快捷方式總結

vi   : visual Interface 可視化接口
       因爲我們頻繁的寫腳本,配置服務器,所以需要一款功能強大的文本編輯器。
vim:VI  iMproved vi增強版
	
vim是一款全屏、模式化編輯器

vim模式的三種模式:
編輯模式(命令模式:複製 刪除 粘貼 剪切 光標定位)
輸入模式(輸入內容)
末行模式(除了編輯命令之外的諸多文件管理命令:保存 退出,引入其他文件內容,比編輯模式更多)

默認是出處於編輯模式的。
模式之間是可以轉換的。
模式轉換::
編輯模式-->輸入模式
	i: 在當前光標所在字符的前面,轉爲輸入模式
	a:在當前光標所在字符的後面,轉爲輸入模式
	o:在當前光標所在行的下方,新建一行,並轉爲輸入模式

	I:在當前光標所行的行首,轉爲輸入模式
	A:在當前光標所在行的行尾,轉爲輸入模式
	O:在當前光標所在行的上方,新建一行,並轉爲輸入模式
模式之間的轉換:
	輸入模式-->編輯模式
		ESC
	編輯模式-->末行模式
		:
	末行模式-->編輯模式
		按兩次ESC

1.打開文件
 # vim /path/to/somefile
	如果文件存在則打開,如果不存在則是新建。
 # vim +# inittab
	快速打開,並使光標定位到第#行。
 # vim + inittab
	快速打開文件,並使光標定位在最後一行上。
 # vim +/PATTERN
	打開文件,定位至第一次被PATTERN(被匹配的字符,模式,樣品)匹配到的行的行首

2.關閉文件
    2.1 末行模式下關閉文件
	:q 退出
	:wq 保存並退出
	:q! 不保存強制退出
	:w 保存
	:w! 強制保存
	:x == :wq 保存並退出
    2.2 編輯模式下關閉文件
	ZZ :保存並退出

3. 光標定位(編輯模式下進行的)
    3.1 逐字符移動(都可以使用 #h 的格式跟數字組合快速移動光標)
	h:向左
	l :向右
	j :向下
 	k:向上
    #h	移動#個字符,按住#只能移動一次
  3.2 逐單詞移動
	w:移動到下一個單詞的詞首
	e :跳到當前單詞詞尾或跳到下一個單詞的詞尾
	b :跳到當前單詞詞首或者前一個單詞詞首
	
    #w	移動到第#個單詞的詞首
  3.3 行內跳轉
	0:跳到行首(絕對行首)
	^:跳到一行的第一個非空白字符
	$:絕對行尾
  3.4 指定行間跳轉
	gg:跳到第一行
	#G:跳轉至第#行
	G:最後一行
    末行模式下,直接給出行號即可  ex: :n ,跳轉到第n行
4.  翻屏
	ctrl+f :向下翻一屏
	ctrl+b:向上翻一屏
	ctrl+d:向下翻半屏
	ctrl+u:向上翻半屏
5. 刪除單個字符
	x:刪除光標所在處的單個字符
	#x:刪除光標所在處及向後的共#個字符

6. 專用的刪除命令d :與跳轉命令組合使用
    刪除單詞	
	d0:刪除當前字符到行首的內容
	d$:刪除當前字符到行尾的內容 == D    刪除光標到行尾 
	#d跳轉符:刪除跳轉符#範圍個
	#dw   #de  #db
	dG:刪除光標到尾部所有內容
    刪除行	
	dd:刪除光標所在行
	#dd:刪除包括光標所在行在內的#行
	n1,n2d:刪除第n1到n2行,刪除指定範圍的行
********在末行模式下
	.:表示當前行
	+#:表示向下的#行(包括當前行)
	$:表示最後一行+

	
7. 粘貼命令
    小p:
	如果刪除或複製爲整行內容,則粘貼至光標所在行的下方,
	如果刪除或複製爲非整行,則粘貼至光標所在字符的後面。
    大P:	如果刪除或複製爲整行內容,則粘貼至光標所在行的上方,
	如果刪除或複製爲非整行,則粘貼至光標所在字符的前面。

8. 複製命令 y : yank
	同d
	yy:複製單行
	#yy:複製#行

9. 修改:先刪除內容,再轉換爲輸入模式
	c:用法同d	
	cc
	cG	
	cgg
10. 替換單字符命令
	r :替換單個字符
	R:從光標處開始替換任意多個字符,ESC退出替換命令
11. 撤銷
	u:撤銷前一次的編輯操作
	     連續u命令可撤銷此前的n詞編輯操作
	#u:直接撤銷最近#次編輯操作
	
	撤銷撤銷:ctrl+r

12. 重複前一次編輯操作
	.
13. 可視化模式
	v:按字符選區
	V:按矩形選區
14. 查找
	/pattern
	?pattern
	n
	N
	: set ic 不區分大小搜索
15. 查找並替換
	在末行模式下使用   s   命令
	: %s/old/new/g
		全文替換
	: n1,n2s/old/new/g 
		指定行替換,不詢問
	: n1,n2s/old/new/c 
		指定行替換,詢問
16. 另存爲
	:w new_filename 另存爲指定文件	
	:w 保存修改
	:wq 保存退出
	:q! 不保存退出
	:wq! 保存修改並推出(文件所有者及root可使用)
	ZZ: 保存修改並退出
	
技巧總結:
17. 導入一個文件,或者命令產生的內容
	:r filename   
18. 不退出編輯查詢“命令行”的命令
	:!which 命令
19. 把一個命令的執行結果導入到文件中
	:r !date
20. 定義快捷鍵
	map ^p  I#<esc>      ^p --> ctrl+v+p
		 行首插入#

	map ^b 0x
		刪除行首字符

21. 連續行註釋(實際上就是空位 和 # 或者 // 之間的替換)
	: n1,n2s/^/#/g    :給指定行首加入#

	: n1,n2s/^#//g    :去掉多行行首#

	: n1,n2s/^/\/\//g :行首添加註釋 //		
22. 替換
	:ab myemail  [email protected]

23. 將快捷方式保存爲長期有效快捷方式:要在home目錄下,新建 .vimrc 文件。
	/home/username/.vimrc     /root/.vimrc

	


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章