Linux Shell vi常用命令

vi 有三種模式:

1、一般模式

       以vi 處理文件時,一進入該文件就是一般模式了。在這個模式中,可以使用上下左右按鍵來移動光標,可以使用“刪除字符”或“刪除整行”來處理文件內容,也可以使用“複製”、“粘貼”來處理您的文件數據。

2、編輯模式

       在一般模式下可以處理刪除、複製、粘貼等動作,但是卻無法編輯。在按下i ,I,o ,O,a,A,r,R 等字母之後纔會進入編輯模式。注意,通常在Linux中,按下上述字母后,在畫面的左下方會出現INSERT 或REPLACE字樣,這纔可以輸入任何字符寫入您的文件中。如果要回到一般模式,必須按下Esc鍵,纔可退出編輯模式。

3、命令模式

       在一般模式中,輸入“: ”或“/ ”就可以將光標移動到最末一行。在這個模式中,您可以搜尋數據,讀取、存盤、大量字符替換、退出vi 、顯示行號等動作也是在此模式中完成。

指令通常有下面幾種(注意,當按下“: ”時,光標會自動移動到屏幕的最下面一行)

一般模式 光標移動
h 或 向左的方向鍵 光標向左移動一個字符
j 或 向下的方向鍵 光標向下移動一個字符
k 或 向上的方向鍵 光標向上移動一個字符
l 或 向右的方向鍵 光標向右移動一個字符
Ctrl+f 屏幕向前翻動一頁(常用)
Ctrl+b 屏幕向後翻動一頁(常用)
Ctrl+d 屏幕向前翻動半頁
Ctrl+u 屏幕向後翻動半頁
+ 光標移動到非空格符的下一列
- 光標移動到非空格符的上一列
n<space> 按下數字後再按空格鍵,光標會向右移動這一行的n個字符。例如10<space> 則光標向右移動10個字符
0 (這是數字0)光標移動到這一行的第一個字符(常用)
$ 光標移動到這一行的最後一個字符(常用)
H 光標移動到這個屏幕最上方的那一行
M 光標移動到這個屏幕中央的那一行
L 光標移動到這個屏幕最下方的那一行
G 光標移動到這個文件的最後一行(常用)
nG 光標移動到這個文件的第n行  如20G 則會移動到這個文件的第20行
n<Enter> 光標向下移動n行(常用)

 

一般模式 查找與替換
/word 在光標之後查找一個名爲word的字符串(常用)

?word

在光標之前查找一個名爲word的字符串
:n1,n2s/word1/word2/g 在n1與n2行之間查找word1這個字符串,並將該字符串替換爲word2(常用)
:1,$s/word1/word2/g 從第1行到最後一行查找word1字符串,並將其替換爲word2(常用)
:1,$s/word1/word2/gc 從第一行到最後一行查找word1字符串,並將其替換爲word2,且在替換前顯示提示符讓用戶確認(conform)(常用)

一般模式 刪除、複製與粘貼
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 恢復前一個動作(常用)

 

編輯模式  
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這個文件

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章