Linux vi/vim 編輯命令總結

. VIM 高亮
進入 vim 後,在普通模式下輸入以下命令,開啓 php 代碼高亮顯示
 
   :syntax enable
 
   :source $VIMRUNTIME/syntax/php.vim
 
. VI 經常使用命令
_______________________________________________________
通常模式                            光標移動
__________________________________________________________
h 向左方向鍵                     光標向左移動一個字符
j 向下方向鍵                      光標向下移動一個字符
k 向上方向鍵                     光標向上移動一個字符
l 向右方向鍵                     光標向右移動一個字符
Ctrl + f                           屏幕向前翻動一頁 ( 經常使用 )
Ctrl + b                           屏幕向後翻動一頁 ( 經常使用 )
Ctrl + d                           屏幕向前翻動半頁
Ctrl + u                            屏幕向後翻動半頁
+                                  光標移動到非空格符的下一列
-                                  光標移動到非空格符的上一列
n<space>                           接下數字後再按空格鍵,光標會向右移動這一行的
                                   n 個字符,例如 20<space> ,則光標會向右移動 20 個字符
0                                  ( 這是數字 0) 移動到這一行的第一個字符處 ( 經常使用 )
$                                  移動到這一行的最後一個字符處 ( 經常使用 )
H                                  光標移動到這個屏幕最上方的那一行
M                                  光標移動到這個屏幕中央的那一行
L                                  光標移動到這個屏幕最下方的那一行
G                                  移動到這個文件的最後一行 ( 經常使用 )
nG                                 移動到這個文件的第 n . 例如 20G ,則會移動到這個文件的
                                   20 ( 可配合 :set nu)
n<Enter>                           光標向下移動 n ( 經常使用 )
________________________________________________________________
通常模式                            查找替換
________________________________________________________________
/word                              在光標以前查找一個名爲 word 的字符串
?word                              在光標以前查找一個名爲的 word 字符串
:n1,n2s/word1/word2/g              在第 n1 n2 行之間查找 word1 這個字符串 , 並將該字符串替換
                                   word2( 經常使用 )
:1,$s/word1/word2/g                從第一行到最後一行查找 word1 字符串,並將該字符串替換
                                    word2( 經常使用 )
:1,$s/word1/word2/ge               從第一行到最後一行查找 word1 字符串,並將該字符串替換
                                   word2, 且在替換前顯示提示符讓用戶確認 (confirm)( 經常使用 )
__________________________________________________________________
通常模式                             刪除 複製與粘貼
__________________________________________________________________
x,X                                x 爲向後刪除一個字符 ,X 爲向前刪除一個字符 ( 經常使用 )
nx                                 向後刪除 n 個字符
dd                                 刪除光標所在的那一整行 ( 經常使用 )
ndd                                 刪除光標所在行的向下 n 行,例如, 20dd 則是刪除 20 ( 經常使用 )
d1G                                刪除光標所在行到第一行的全部數據
dG                                 刪除光標所在行到最後一行的全部數據
yy                                 複製光標所在行 ( 經常使用 )
nyy                                複製光標所在行的向下 n 行,例如, 20yy 則是複製 20 ( 經常使用 )
y1G                                複製光標所在行到第一行的全部數據
yG                                 複製光標所在行到最後一行的全部數據
p,P                                p 爲複製的數據粘貼在光標下一行, P 則爲粘貼在光標上一行 ( 經常使用 )
J                                  將光標所在行與下一行的數據結合成一行
u                                   恢復前一個動做 ( 經常使用 )
 
____________________________________________________________________
編輯模式                           
___________________________________________________________________
i,I                                 插入:在當前光標所在處插入輸入的文字,已存在的字符會向後
                                   退 ( 經常使用 )
a,A                                添加:由當前光標所在處的下一個字符開始輸入,已存在的字符
                                   會向後退 ( 經常使用 )
o,O                                插入新的一行:從光標所在處的下一行行首開始輸入字符 ( 經常使用 )
r,R                                替換: r 會替換光標所指的那一個字符: R 會一直替換光標所指的
                                   文字,直到按下 Esc 爲止 ( 經常使用 )
Esc                                退出編輯模式,回到通常模式 ( 經常使用 )
 
___________________________________________________________________
命令行模式                           
___________________________________________________________________
 
:w                                 將編輯的數據寫入硬盤文件中 ( 經常使用 )
:w!                                若文件屬性爲只讀,強制寫入該文件
:q                                 退出 vi( 經常使用 )
:q!                                若曾修改過文件,又不想保存,使用!爲強制退出不保存文件
:wq                                保存後退出,若爲 :wq!, 則爲強制保存後退出 ( 經常使用 )
:w [filename]                      將編輯數據保存爲另外一個文件 ( 相似另存新文檔 )
:r [filename]                      在編輯的數據中,讀入另外一個論據的數據,亦即將 filename
                                    個文件內容加到光標所在行的後面
:set nu                            顯示行號,設定以後,會在每一行的前面顯示該行的行號
:set nonu                          set nu 相反,爲取消行號
n1,n2 w [filename]                 n1 n2 的內容保存爲 filename 這個文件
相關文章
相關標籤/搜索