vim使用說明vim
1、定義編輯器
vi:visual interfaceide
vim:visual interface iMprovedspa
擴展:it
Emacs、sed、awk、nanoast
2、模式class
1、三種模式:awk
編輯模式(命令模式)擴展
輸入模式sed
末行模式
二、模式切換
1、vi/vim file:默認進入編輯模式(命令模式)
2、編輯模式(命令模式)-----> 輸入模式
i:在緊挨光標所在位置的前面輸入。
I:在行首輸入
a:在緊挨光標所在位置的後面輸入(光標向後移動1個字符,再輸入)
A:在行尾輸入
o:在光標所在行下面新建輸入新行
O:在光標所在行上方新建輸入新行
3、輸入模式------> 編輯模式(命令模式)
Esc
4、編輯模式(命令模式)-----> 末行模式
:
5、末行模式------> 編輯模式(命令模式)
Esc
3、打開關閉
1、打開
vim
vim FILENAME:打開文件到編輯模式
vim +# FILENAME(#爲行數):打開文件並定位光標到第#行
vim +/PATTERN:打開文件並定位光標到匹配第一個PATTERN的行
2、關閉
末行模式下:
:wq 保存退出
:q 退出
:q! 不保存強制退出
:x 保存退出
編輯模式(命令模式)下:
ZZ 保存退出
4、編輯模式(命令模式)命令
1、光標跳轉(移動)
h:向左移動一個字符
j:移動到光標正對下一行的字符
k:移動到光標正對上一行的字符
l:向右移動一個字符
等同於小鍵盤的方向鍵(h左,j下,k上,l右),能夠與數字同時使用。例:#h向左移動#個字符
w:移動到後一個單詞的詞首
e:移動到當前或後一個單詞的詞尾
b:移動到當前或前一個單詞的詞首
w,e,b一樣能夠與數字同時使用,#w,#e,#b
^:移動到行首第一個非空字符
0:移動到行首
$:移動到行尾
#G:移動到第#行第一個非空字符
1G,gg移動到第一行第一個非空字符
G:移動到最後一行第一個非空字符
2、編輯命令
x:刪除光標所在位置的字符
#x:刪除光標所在日後的#個字符
#xp:剪切粘貼
r #:替換光標所在處字符爲#
d:刪除光標所在的行
d^:刪除光標所在至行第一個非空字符
d$:刪除光標所在至行尾
d0:刪除光標所在至行首
dw:刪除光標所在至下一個單詞的詞首
de:刪除光標所在至當前或下一個單詞的詞尾
db:刪除光標所在至當前或上一個單詞的詞首
dd:刪除光標所在整行
注:d命令刪除的內容會被vim編輯器保存至緩衝區
p:粘貼
1、複製或刪除的內容不是一個完整的行
p小:粘貼至當前光標所在處後面
P大:粘貼至當前光標所在處前面
2、複製或刪除的內容是完整行(但是多行)
p小:粘貼至當前光標所在行下方
P大:粘貼至當前光標所在行上方
y:複製,與d用法相同
y^:複製光標前一字符至行第一個非空字符
y$:複製光標所在至行尾
y0:複製光標所在至行首
yw:複製光標所在至下一個單詞的詞首
ye:複製光標所在至當前或下一個單詞的詞尾
yb:複製光標所在至當前或上一個單詞的詞首
yy:複製光標所在整行
c:修改,刪除指定字符,並切換到輸入模式
c^:修改光標以前一個至行第一個非空字符
c$:修改光標所在至行尾
c0:修改光標所在至行首
cw:修改光標所在至下一個單詞的詞首
ce:修改光標所在至當前或下一個單詞的詞尾
cb:修改光標所在至當前或上一個單詞的詞首
cc:修改光標所在整行
u:撤銷上一步操做
ctrl+r:恢復撤銷的操做
.:重複前一個編輯命令
三、翻屏
ctrl+f:向後一屏
ctrl+b:向前一屏
ctrl+d:向後半屏
ctrl+u:向前半屏
5、末行模式
1、地址定界匹配
:start_pos,end_pos
:# 第#行
:#,& 第#行到&行
:. 當前行
:$ 最後一行;等同於命令模式下的G
:% 全文;等同於:1,$
2、查找
/pattern:向尾部進行
?pattern:向首部進行
n:與命令同方向
N:與命令反方向
3、替換
s:在末行模式下,在地址定界的範圍內完成查找替換操做
格式:
s/要查找的內容/想要替換成的內容/修飾符
查找內容:可以使用模式匹配
替換內容:不能使用模式,但可使用後向引用符號,以引用前面模式中的分組括號所匹配到的內容;引用:
() \1,\2……
&:引用查找內容匹配到整個內容
修飾符:
i:忽略大小寫
g:全局
分隔符:習慣用 /,查找替換的內容若出現/。能夠:
1、用轉義符\。寫成:\/
2、使用其餘字符代替分隔符:例如@,#等
四、導入
:!command 執行系統命令
:r filename 導入文件;在光標所在位置寫入導入文件的內容
:r!command 將命令結果寫入打開的文件光標所在位置
6、編輯多文件
同時編輯修改多個文件
vim FILE1,FILE2……
1、切換文件
:next 下個文件
:first 第一個文件
:prev 上一個文件
:last 最後一個文件
2、退出
:wqall 所有保存退出
:q!all 所有強制退出
3、多文件窗口分割
vim -o|-O FILE1 FILE2……
-o:水平分割
-O:垂直分割
4、 單文件分割
ctrl+w,s水平分割
ctrl+w,v 垂直分割
操做:ctrl+w,而後按s或v
7、特性定製
1、行號
:set nu
:set nonu
2、括號匹配
:set sm
:set nosm
3、自動縮進
:set ai
:set noai
4、高亮搜索
:set hlsearch
:set nohlsearch
5、語法着色
:syntax on
:syntax off
6、忽略大小寫
:set ic
:set noic
使以上特性永久性生效:
全局:/etc/vimrc
我的:~/.vimrc