vi(vim)
能夠說是
linux
中用得最多的工具了,無論你配置服務也好,寫腳本也好,總會用到它。可是,
vim
做爲一個
「
純字符
」
模式下的工具,它的操做和
WINDOWS
中的文本編輯工具相比多少有些複雜。這裏,我根據本身我的的使用經驗,整理了一套
vim
的操做以及記憶的方法,但願對你們的學習有所幫助。
VI
的三種模式
1
,命令模式 2,輸入模式 3,末行模式
命令 執行的操做 記憶方法
:q
退出 quit
:w
存盤 write
:e
打開新文件
:r
讀取文件到VI read
:!
強行
:set nu
顯示行號 number
:set nonu
隱藏行號 no number
h j k l
左 下 上 右
Ctrl + f
翻到下一頁(向前翻頁) front
Ctrl + b
翻到上一頁(向後翻頁) back
Ctrl + u
向前翻半頁
Ctrl + d
向後翻半頁
^
移到行頭 往上就到行頭了(象形)
$
移到行尾 寫完一行就要給一行的錢
w
下一個單詞 word
b
前一個單詞 behind(在。。。後面)
e
下一單詞尾 end
#G
跳到某一行 大哥(G)說到哪就到哪
i
光標前插入 insert
a
光標後加入 add
A
在行末加入 在一個詞後是小a,一個行後就是大A
o
另起一行加入 一個小雞蛋(小o)掉下來了摔開了花
O
上一行加入 吐一個大泡泡(大O)飛上去破了
---------- c(吃掉)表明行內刪除--------
cw
刪除一個單詞(一部分不包括空格) 吃掉一個 word
c$
刪除一行到行尾 剛寫的一行被刪了,錢也拿不到了
c^
刪除一行到行頭 往上吃,一直吃到頭
x
刪除一個字符 看你不爽就打上「x」
---------- d 表明刪除--------------
dd
刪除一行 del dir
dw
刪除單詞到尾部(包括空格) del word
de
刪除單詞到尾部(不包括尾部空格) del end
d$
刪除當前到行尾的全部字符 del $(表明尾部)
d^
刪除當前到行首的全部字符 del ^(表明行首)
J
合併當前行 一個大鉤子(J)把下面的一行拉到本身行尾
u
撤銷上次操做 undo
U
撤銷當前行全部操做 事情鬧大了,得有個更大的UNDO才能恢復
Ctrl + r
恢復undo 前 recover
--------- y 表明複製到緩存中-----------
yy
複製當前行整行的內容到vi緩衝區
yw
複製當前光標到單詞尾字符的內容到vi緩衝區
y$
複製當前光標到行尾的內容到vi緩衝區
y^
複製當前光標到行首的內容到vi緩衝區
p
讀取vi緩衝區中的內容,並粘貼到光標當前的位置(不覆蓋文件已有的內容)
/word
從上而下查 /是從上而下寫的吧
?word
從下而上查找 字符在哪兒呢(?)回頭找找吧
n
定位下一個匹配的 至關於向下查找下一個 next
N
定位上一個匹配的 至關於向上查找上一個
:s/1/2
搜索當前行第一個1並用2代替 search
:s/1/2/g
搜索當前行全部的1並用2代替 global
:#,#s/1/2/g
在#,#間搜索全部1並用2替換
:%s/1/2/g
在整個文檔中將1替換爲2 100%(所有)
:s/1/2/c
每次替換都給出提示確認 cue提示
vim 1.txt 2.txt 3.txt
同時打開多個文檔
:args
顯示多文件信息(會在末行提示當前打開了哪些檔) are globals
:next
切換到下一個文件
:prev
切換到上一個文件
:first
定位首文件
:last
定位尾文件
Ctrl + ^
快速切換到編輯器中切換前的文件
|