一、Vim編輯器
文本編輯器,文字處理器
vi:Visual Interface
vim:Vi iMproved
全屏編輯器,模式化編輯器
vim模式:
輸入模式: 末行模式:
二、模式轉換:
編輯-->輸入
i:當前光標所在字符的前面,轉爲輸入模式;
a:當前光標所在字符的後面,轉爲輸入模式;
o:當前光標所在行的下面,新建一行,並轉爲輸入模式
I:在當前光標所在的行首,轉爲輸入模式
A:在當前光標所在字符的前面,轉換爲輸入模式
O:在當前光標所在行的上方,新建一行,並轉換爲輸入模式
輸入-->編輯 ESC 編輯-->末行 : 末行-->ESC ESC
三、關閉文件
1、末行模式關閉文件
w:保存
q:退出,不保存
q!:強制退出
wq:保存並退出 等價於:x
w!:強行保存,只有管理員可以
2、編輯模式下退出
zz:保存並推出
四、移動光標(編輯模式,非輸入模式)
1、逐字符移動
h:左i:右 j:上 k:下
#h:移動#個字符 #爲數字
2、以單詞爲單位移動
w:移動到下一個單詞的詞首
e:跳轉當前或下一個單詞的詞首
b:跳至當前或前一個單詞的詞首
#w:移動#個單詞
3、行內跳轉
0:跳至行首,頂格,絕對行首
^:跳到行首,行首的第一個非空白字符
$:絕對行尾
4、行間跳轉
#G:跳轉至#行 50G :跳轉至第50行
G:最後一行
末行模式下也支持跳轉的,給出行號即可
五、翻屏的操作
ctrl + f:向下翻一屏
ctrl + b:向上翻一屏
ctrl + d:向下翻半屏
ctrl + u:向上翻半屏
六、刪除
1、刪除單個字符
x:刪除光標所在行的單個字符
#x:刪除光標所在行及向後共#個字符
2、刪除命令:d
d命令和跳轉命令組合使用
#d跳轉符:刪除#個 例如 3dd
#dw.#de,#db(向前刪除一個單子或字符)
dd:刪除當前光標所在行
#dd:刪除包括當前光標所在行在內的#行
七、末行模式
StartADD,EndADDd
.:表示當前行
$:表示最後一行
+#:向下的#行
補充:yy:複製光標後面的所有內容 粘貼命令:p 複製名y同d命令
P:如果刪除的或複製爲整行內容,則粘貼至光標所在行的上方,如果複製或刪除的內
容爲整行,則粘貼至光標所在字符的前面
p:如果刪除的或複製爲整行內容,則粘貼至光標所在行的下方,如果複製或刪除的內
容爲整行,則粘貼至光標所在字符的後面
八、替換、查找以及查找並替換
1、替換r:R:替換模式 esc推出替換模式 r:替換單個
2、查找命令:
/表達式pattern
? Pattern
n:
N:
3、查找並替換
在末行命令模式下使用s命令
ADDR1,ADDR2s@PATTERN@string@g
: n(開始),$-1s/he/HE/s 找到he換成HE
/g 全局 默認第一行的第一個 %表示全文
九、撤銷
撤銷編輯操作u
u:撤銷前一次的編輯操作
連續u可撤銷此前的n次操作,最多50次
#u:撤銷最近#次操作
取消最近一次的撤銷 ctrl + r
. 重複前一次的操縱
十、可視模式
v:按字符選取
V:按矩形塊選取
十一、打開多個文件
vim a b c
打開a b c 三個文件,默認屏幕上只顯示a
netx 跳到下一個文件
prev 跳回上一個文件
last 最後一個文件
first 切換到第一個文件
:qa 全部退出
十二、分屏顯示
ctrl + w, 鍵入s 水平分屏 ctrl + w + 光標向下到下一屏幕
ctrl + w, 鍵入v垂直分屏 ctrl + w + 光標向右到下一屏幕
十三、分窗口多個文件
vim a b c -o 水平分割
vim a b c -O 垂直顯示
十四、將當前文件中的部分存儲到其他文件中
末行模式下輸入w命令
:w
:ADDR1,ADDR2w/path/to/somewhere
十五、將另外一個文件的內容填充在當前文件中
:r/path/to/文件名
十六、根交互
:!Commnd
十七、高級話題
1、顯示或取消行號
:set number/nu 顯示
:set nonu 取消
2、顯示忽略或區分字符大小寫
:set ignorecase 忽略大小寫
:set ic (簡寫)
:set noic 取消
3、自動縮進
:set autoindent/ai (簡寫)
:set noai
4、查找到的文本高亮顯示或取消
:set hlsearch
: set nohlsearch
5、語法高亮
:syntax on
: syntax off
十八、配置文件
/etc/vimrc
~/.vimrc(在家目錄下,自己創建)
學習vim vimtutor 系統自帶的