Linux重器之 Vim 實用命令

Vim 經常使用的命令

 光標定位;

hjkl  上下左右移動vim

0 $ 跳到行首或行尾加密

gg   shift+G 跳到整個文件的開頭行或者結尾行spa

1G ,2G,3G........NG ,跳到第1.2.3 N 行開頭3d

/String(n N 能夠循環的 上一個下一個切換) 快速定位到某個有String 的 行,blog

/^d   快速定位到以  d 開頭的行,string

/txt$ 快速定位的到以txt  結尾的行.擴展

文本編輯(少許)

y 複製. yy 3yy ygg yG (以行爲單位)配置

d 刪除 dd 3dd dgg dG(以行爲單位)vimrc

p 粘貼循環

x 刪除光標所在的字符

D 從光標處刪除到行尾

u undo 撤銷

^r redo 反撤銷,重作   Ctrl + r

r 修改一個字符

進入其餘模式

a 進入插入模式,  在光標的後面插入

i  進入插入模式, 在光標前面插入

o  另起一行插入

A shift + A  在當前行尾插入

:   進入末行模式(擴展命令模式)
v  進入可視模式

 

^v  進入可視塊模式   Ctrl +v

V 進入可視行模式 

R 進入替換模式   在光標後進行批量替換,相似於爲Windows上的 文本Insert 

插入模式下的VIm 關鍵字 自動補全 Ctrl + p / n 

 

可視塊模式:

塊插入:(在指定塊前面加入字符)  選擇塊, Shift  i   而後輸入字符 ,ESC(退出兩次)

 

 塊替換:  選擇塊  r  輸入替換的字符

塊刪除 : 選擇塊,  輸入 d 或者 x 

塊複製 : 選擇塊 , y 

擴展命令模式:

: 10  進入第10行

: w  保存

:q 退出

:wq 保存並退出

:w!  強制保存

:q! 不保存強制退出

:wq!  強制保存退出

: x 強制保存退出 或者ZZ 

:X 給當前文件上鎖, 加密,

 遠程登錄的過程當中 Ctrl +s 會鎖定 當前終端 , 輸入任何命令都不可見,可是命令仍然能夠執行 Ctrl +q  解除鎖定,展現命令

查找替換s search

: 範圍 s/old/new/選項   

:1,5 s/ string1 / string2 /  從第一行到第五行,把string1 替換爲string2 . / 能夠換作其餘分隔符, 只要保持同樣

: 5,$ s/root/yang   $表示最後一行

:1,$ s/root/yang/g  == :% s/root/yang/g  % 表示全文,g表示全局

:%  s/#/dev/sda#/var/sss#g  #這裏表示分隔的標識符

:,8 s/root/yang  從當前行到第八行

:2,8 s/^#//  2-8行的開頭# 替換爲空

:1,9 s/.*/#&/ 1-9行 前面計入#字符(.*整行,& 引用查找的內容)

 讀入文件/ 寫文件(另存爲)

:w 存儲到當前文件

:w /tmp/aaa.txt  另存爲tmp/aaa.txt

:1,3 w  /tmp/aaa.txt  1至3行另存爲 /tmp/aaa.txt  文件

:r /etc/hosts 讀入文件到當前行後

:5 r  /etc/hsotst  讀入文件到第五行後

設置環境

臨時設置:設置了以後只對當前vim 文件有效,退出則無效

:set nu 設置行號

:set ic 不區分大小寫

:set ai 自動縮進

:set list 顯示控制字符

:set nonu 取消設置行號

:set noic   .....

永久設置環境 :   修改vim的環境配置文件

/etc/vimrc   影響全部系統用戶

~/.vimrc   影響某一個用戶

Vim 打開多個文件

vim  - O 文件1, 文件2 ,。。。(O 表示左右並排顯示, o 表示上下並排顯示)

:qall 退出所有,:q 單個退出,其餘命令所有操做也加 all

^ww (Ctrl + ww) 切換窗口

比較兩個文件的不一樣

vimdiff 文件1 , 文件2 

相關文章
相關標籤/搜索