【Linux】中默認文本編輯器 vim 的入門與進階
Linux 基本操作 vim 篇
vim 簡介
vim 是 Linux 上最基本的文本編輯工具,其地位像是 Windows 自帶的記事本工具,還要少數的 Linux 系統自帶 leafpad 編輯器,leafpad 的操作介面更像是 Win 的記事本,可以使用滑鼠切換游標,自由刪除,並且點擊左上角的文件可以進行保存;但是 vim 編輯器卻像是一個簡單的指令工具,其操作必須依靠指令來完成,但是如果不會使用 vim 的話,是無法完成很多操作的,甚至對大多數只集成了 vim 的系統來說,不會使用 vim ,甚至無法安裝 leafpad ,而在 Linux 系統中,剛裝完的系統(國產系統除外)一定要進行換源,這時候就要使用到一個編輯器工具,如果你的系統只有 vim,最好還是學習一下如何使用 vim;
vim 三種模式
- 只讀模式:使用 vim 打開文件為 只讀模式,此時只可以查看文件內容,無法對文件進行編輯;
- 插入模式:即 編輯模式 ,此時可以對文件進行編輯,字元的插入或刪除等操作;
- 底行模式:類似於終端的命令行,此時可以輸入命令,選擇是保存文件 / 保存並退出 / 不保存退出 / 強制退出 等;
vim 基本命令
基本的編輯命令,學會後可以流暢操作 vim 編輯器;
-
在進入 vim 之前,建議使用:sudo su 命令進入超級管理員模式,否則一些系統級的文件即使你編輯了,也無法進行保存;
-
打開文件:打開控制終端,輸入 vim + 一個文本的名字,就可以打開這個文本(打開當前目錄下的文件只需要輸入文件名,打開其他目錄下的文件需要輸入絕對地址);這個時候是「只讀」模式,無法對文件進行編輯;
-
編輯命令:進入文件之後,點擊
i
(insert 縮寫),進入編輯模式,這個時候可以自使用上下左右四個鍵控制游標,使用刪除鍵刪除,或輸入任意字元; -
底行模式:對文件編輯好之後,點一下
Esc
鍵,進入底行模式,此時可以輸入命令選擇對文件的操作,基本命令如下(註:以冒號開頭):
指令 | 效果 | 備註 |
---|---|---|
:wq | 保存 並 退出 | 保存文件並退出文件,返回到命令終端介面; |
:q | 退出 | 不保存,直接退出文件,返回到命令終端介面; |
:q! | 強制退出 | 提示無法保存的時候,加!可以強制退出文件,此時的文件快取在記憶體中,並不會存回磁碟中; |
:wq! | 強制保存並退出 | 此時文件會被強制保存,並退出回到命令終端; |
vim 進階命令
進階指令,學會後操作更方便,相當於魔法加成;
- 游標控制
指令 | 效果 | 備註 |
---|---|---|
:num | 讓游標跳到第 Xnum行首 | 只會跳到行首 |
:nd | 刪除第 n 行 | d:delete |
:n , md | 從第 n 行刪到第 m 行 | m 不能超過最後一行,否則提示無效 |
- 快速複製粘貼
指令 | 效果 | 備註 |
---|---|---|
:n,my | 複製第 n 行到 m 行的內容 | 按 p 粘貼(Paste) |
:n,md | 剪切第 n 行到 m 行的內容 | 按 p 粘貼(Paste) |
- 文本編輯(效果類似於各類編輯器的「編輯」功能)
指令 | 效果 | 備註 |
---|---|---|
:%s#old#new#g | 全局替換 | g:全局 ;#不是代替空格用的,不可以刪除; |
:num s#old#new#g | 在第 num 行查找old並將其替換成new | 相對於上一條命令,加了一個範圍:某一行; |
:n , m s#old#new#g | 在第 n 到 m 行查找old並將其替換成new | 相對於上一條命令,擴大了範圍,多行;- |
- 文件操作
指令 | 效果 | 備註 |
---|---|---|
vsp xxx.c | 左右分屏打開 xxx.c 文件 | 分屏應該很常見了,可以理解吧 |
sp xxx.c | 上下分屏打開 xxx.c 文件 | |
:w new xxx.c | 將當前文件另存為 xxx.c 文件 | 可以使用絕對地址 |
:n ,mw new xxx.c | 將當前文件的第 n 到 m 行另存為 xxx.c 文件 | 使用時候注意不要少了 w |
:0r /etc/hosts | 將/etc/hosts文件中的內容導入到此文件的開頭 | |
:$r /etc/hosts | 將/etc/hosts文件中的內容導入到此文件的結尾 |
- 搜索內容
指令 | 效果 | 備註 |
---|---|---|
/word | 在文件中搜索word 這個單詞 |
|
n | 向下查找(下一個) | |
N | 向上查找(上一個) | |
/word\c | 忽略大小寫,在文件中搜索word 這個單詞 |
|
:noh | 取消高亮 | 退出「查找模式」 |
注意事項
- vim 可以打開任意模式文件,不一定非得是
.c
文件 - 打開 / 另存為 的時候 最好加上絕對地址
- $ 符號一般指最後( 行 / 字母 )