五分鐘上手 Vim 運(yùn)維老鳥的必備編輯技巧
為什么運(yùn)維老鳥離不開 Vim?
真實(shí)場(chǎng)景:
當(dāng)你通過SSH連接到一臺(tái)沒有GUI的服務(wù)器,面對(duì)一個(gè)2GB的日志文件時(shí):
- 圖形化工具卡死
- Nano功能太弱
- 唯有Vim能快速定位問題
Vim 的不可替代性:
- 輕量高效:無需安裝插件即可處理大文件
- 純鍵盤操作:手不離鍵盤,效率翻倍
- 無處不在:預(yù)裝在所有Linux/Unix系統(tǒng)中

五分鐘掌握 Vim 生存技能
(1) 模式切換(生存底線)
i # 進(jìn)入編輯模式(Insert Mode)
ESC # 返回普通模式(Normal Mode)
: # 進(jìn)入命令模式(Command Mode)操作場(chǎng)景:
- 編輯時(shí)突然需要翻頁?按 ESC 切回普通模式
- 保存文件?ESC → :wq
(2) 移動(dòng)光標(biāo)的肌肉記憶
gg # 跳轉(zhuǎn)到文件開頭
G # 跳轉(zhuǎn)到文件末尾
50G # 跳轉(zhuǎn)到第 50 行
Ctrl+f # 向下翻頁(Page Down)
Ctrl+b # 向上翻頁(Page Up)實(shí)戰(zhàn)案例:
vim /var/log/nginx/access.log +G # 打開日志直接到底部
/error # 搜索所有 error 關(guān)鍵詞知識(shí)點(diǎn):
- +G:打開日志直接到底部
- /error:在命令模式下,搜索所有error關(guān)鍵詞
(3) 高效編輯三件套
dd # 刪除整行
yy # 復(fù)制當(dāng)前行
p # 粘貼
u # 撤銷操作(救命鍵!)
:%s/old/new/g # 全局替換運(yùn)維場(chǎng)景:
# 批量修改配置中的 IP 地址
:%s/192.168.1.100/10.0.0.200/g上述命令是把文件中192.168.1.100全部替換成10.0.0.200
運(yùn)維老鳥的私藏技巧
(1) 技巧 1:日志分析閃電戰(zhàn)
# 查看實(shí)時(shí)日志
vim /var/log/app.log +"set wrap!"
:Glog # 進(jìn)入實(shí)時(shí)追蹤模式(需 vim-fugitive 插件)
/500 # 搜索 HTTP 500 錯(cuò)誤
n # 跳轉(zhuǎn)到下一個(gè)匹配項(xiàng)(2) 技巧 2:多文件協(xié)同編輯
vim -O nginx.conf app.conf # 垂直分屏打開多個(gè)文件
Ctrl+w+w # 窗口間切換
:diffthis # 對(duì)比文件差異(3) 技巧 3:保存文件前顯示差異
修改文件后不確定具體改動(dòng)且擔(dān)心有誤修改?在 vim 中查看緩沖區(qū)與文件的差異,執(zhí)行如下命令
:w !diff % -知識(shí)點(diǎn)
- :!<command>是執(zhí)行shell命令的語法.
- %表示未修改的當(dāng)前文件的名稱.
- -是diff命令的STDIN文件。

通過上圖可以看到文件第二行發(fā)生了改變,添加了新的內(nèi)容。
小結(jié)
本文為運(yùn)維人員提供了快速上手Vim的實(shí)用指南,幫助他們?cè)?分鐘內(nèi)掌握核心編輯技巧。文章從Vim的不可替代性入手,詳細(xì)介紹了模式切換、光標(biāo)移動(dòng)、高效編輯等基礎(chǔ)操作,并分享了運(yùn)維老鳥的私藏技巧,如日志分析、多文件編輯等。

































