Linux操作系統--文本編輯器vim的常用操作
vim簡介:vim是vi improve的縮寫,表示vi的增強版本,也就是說vim的早期版本就是vi。
vim是一個功能強大的全屏幕文本編輯器,是Linux/Unix上最常用的文本編輯器,它的作用是建立、編輯、顯示文本文件。
vim特點:沒有菜單,只有命令。
vim的工作模式:命令模式、插入模式和編輯模式。如圖1所示:
圖1 vim工作模式
其中:
1 命令模式:
輸入:vi/vim filename 即可進入vim默認的命令模式。其中filename表示已經存在或者待創建的文件名。
在vim的命令模式下,輸入任何一個字符,系統都會把它當做是一個命令來處理。
2 插入模式:
要進入插入模式,需要輸入相應的插入命令,其中,i、a、o就是vi比較常用的插入命令。
插入模式下操作完成之後按ESC鍵即可返回到命令模式。
3 編輯模式
進入編輯模式的標誌就是在命令模式下輸入“:”,注意,一定要是在命令模式下輸入纔行。
以上是對vim的三種模式的簡單介紹,下面給大家列舉一些命令模式和編輯模式下的常用命令功能解析
(1)插入命令(從命令模式進入插入模式的常用命令):
i 在光標所在字符前插入
a 在光標所在字符後插入
o 在光標所在行下插入新行
I 在光標所在行行首插入
A 在光標所在行行尾插入
O 在光標所在行上插入新行
(2)光標定位命令:
:set nu 設置行號(nu是number的簡寫)
:set nonu 取消行號
gg 光標定位到第一行
G 光標定位到最後一行
nG 光標定位到第n行
:n 光標定位到第n行
$ 移至行尾
0 (數字0)移至行首
(3)刪除命令:
x 刪除光標所在處的字符
nx 刪除光標所在處後n個字符(包含光標所在處字符)
dd 刪除光標所在行
ndd 刪除光標所在行後n行(包含光標所在行)
dG 刪除光標所在行到文件末尾的所有內容
D 刪除光標所在處到行尾的所有內容
:n1,n2d 刪除指定範圍內的行(包含邊界處的第n1行和第n2行)
(4)複製和剪切命令:
yy 複製當前行
nyy 複製當前以下n行(包含當前行)
dd 剪切當前行
ndd 剪切當前以下n行(包含當前行)
p、P 粘貼在當前光標所在行下(p)或行上(P)
(5)替換和取消命令
r 取代光標所在處字符
R 從光標所在處開始替換字符,按ESC鍵結束
u 取消上一步操作
(6)搜索和搜索替換命令:
/string 搜索指定字符串(默認是區分大小寫的),
如果想取消區分大小寫,可輸入“:set ic”,
要想還原成區分大小寫,可輸入“:set noic”
n 搜索指定字符串的下一個出現位置
:%s/old/new/g 全文替換指定字符串。
:n1,n2s/old/new/g 在一定範圍內替換指定字符串
注意:
替換操作有固定的模式:
:替換範圍/待替換的原字符串/替換的新字符串/g
直接執行替換操作,不提示是否確認
:替換範圍/待替換的原字符串/替換的新字符串/c
執行替換操作前提示是否執行確認操作
其中:
: 表示進入編輯模式
:%s 表示全文替換
:n1,n2s 表示替換指定的範圍,即“起始行,終止行s”。
(7)保存和退出命令
:w 保存
:w [filename] 另存爲指定文件名
:q 不保存並退出
:q! 不保存並強制退出
:wq 保存並退出
:wq! 保存並強制退出(文件所有者及root可使用)
:wq! [filename] 以指定文件名保存並強制退出
zz 快捷鍵,保存修改並退出