Linux 文字編輯常用快捷鍵
一、編輯模式
vim有三種編輯模式
1. i 進入文字編輯模式
2. esc 進入命令編輯模式
命令編輯狀態下 dd刪除整行
3. :進入底行模式
底行模式狀態 輸入q 退出 w儲存 wq 儲存並退出 !表示強制的意思 q!強制退出
二 、編輯文字常用快捷鍵
1、插入命令
a 在游標後附加文字
A 在本行行末附件文字
i 在游標前插入文字
I 在本行開始插入文字
o 在游標下插入文字
O 在游標上插入文字
2、定位命令
h或方向左鍵 左移一個字元
j或方向下鍵 下移一行
k或方向上鍵 上移一行
l或方向右鍵 右移一個字元
$ 移至行尾
0 移至行首
H 移至螢幕上端
M 移至螢幕中央
L 移至螢幕下端
:set nu 設定行號
:set nonu 取消行號
gg 到第一行
G 到最後一行
nG 到第n行
:n 到第n行
3、刪除命令
x 刪除游標所在的字元
nx 刪除游標所在處後n個字元
dd 刪除游標所在行
dG 刪除游標所在行導末尾的內容
D 刪除從游標所在行到末尾的內容
:n1,n2d 刪除指定範圍的行
4、複製和剪下命令
yy或者Y 複製當前行
nyy或者nY 複製當前行一下n行
dd 剪切當前行
ndd 剪切當前行以下n行
p或者P 貼上在當前游標所在行下或行上
5、替換和取消命令
r 取代游標所在處的字元
R 從游標所在處開始替換字元,按Esc鍵結束
u 取消上一步操作
6、搜尋和替換命令
/string 向前搜尋指定命令,搜尋時忽略大小寫:set ic ,如搜尋ftp: /ftp
n 搜尋指定字串的下一個出現位置
:%s/被替換的字串/替換成的字元創/g 例如把全文的ftp替換成hello :%s/ftp/hello/g
:n1,n2s/被替換的字串/替換成的字元創/g 在一定的範圍內替換字串
7、儲存退出命令
:wq 或者 ZZ 儲存退出
:q! 不儲存退出
:wq! 強行儲存退出 (root或者檔案的所有者)
8、應用例項
1)在vi中匯入檔案 :
:r 檔案
如:匯入/test目錄下的abc.txt檔案 :r /test/abc.txt
2)在vi中執行命令:
:!命令
如:在vi編輯器中檢視 /test目錄下的檔案詳細資訊 :!ls -l /test
這樣就不需要先退出vi再去執行命令
3)把命令執行的結果匯入到vi中:
如:把date命令執行的結果匯入到vi中
:r !date
4)定義快捷鍵
:map 快捷鍵 觸發的命令
如: :map ^P I#<ESC> ^表示定義的快捷鍵,
注意,在vi中,^這個符號是使用ctrl+v組合輸入的符號,^P 在vi中的輸入是ctrl+v和ctrl+p,或者ctrl+v+p
:map ^P I#<ESC> 表示游標無論在行的哪個位置,只要按下ctrl+p就可以在行首插入#號,然後回到命令模式。I表示在行首插入文字,<ESC>表示 回到命令模式。
:map ^E [email protected] 定義了一個快捷鍵ctrl+e,只要按下ctrl+e就可以在游標位置輸入我的郵箱[email protected],非常方便。
再比如我們要定義一個快捷鍵,無論游標在行的哪個位置,只要按下ctrl+b,就可以去掉行首的#註釋(實際上就是把行首的第一個字元刪掉)
:map ^B 0x 定義了一個快捷鍵ctrl+b。0表示移到行首,x表示刪除游標所在字元。
5)連續行註釋
:n1,n2s/^/#/g 在n1行和n2行之間的行首加入#註釋
:n1,n2s/^#//g 把n1行和n2行之間的行首的#註釋去掉