Linux編輯器vim介紹

Linux編輯器vim介紹

一、vi介紹

vi編輯器是所有Unix及Linux系統下標準的編輯器,類似於windows系統下的notepad(記事本)編輯器,
由於在Unix及Linux系統的任何版本,Vi編輯器是完全相同的,因此可以在其他任何介紹vi的地方都能進一步瞭解它,
Vi也是Linux中最基本的文本編輯器,學會它後,我們將在Linux的世界裏暢行無阻,尤其是在終端中。
關於vim:
vi和vim都是Linux中的編輯器,不同的是,vim比較高級,可以視爲vi的升級版本。vi使用於文本編輯,但是vim更適用於coding。
Vim重點是光標的移動,模式切換,刪除,查找替換,複製,粘貼,撤銷命令的使用。

二、vim三種模式(重點)

vim中存在三種模式(大衆的認知):命令模式、編輯模式、末行模式
命令模式:在該模式下是不能對文件直接編輯,可輸入快捷鍵進行一些操作(刪除行、複製行、移動光標粘貼等)
編輯模式:在該模式下可以對文件的內容進行編輯;
末行模式:可以在末行輸入命令來對文件進行操作(搜索、替換、保存、退出、撤銷、高亮等等)
vim的打開文件的方式:(4種,要求掌握)

vim 文件路徑 作用:打開指定的文件

vim +數字 文件路徑 作用:打開指定的文件並且將光標移動到指定的行

vim +/關鍵詞 文件路徑 作用:打開指定文件,並且高亮顯示關鍵詞

vim 文件路徑1 文件路徑2.... 作用:同時打開多個文件

重點:先複製出一個/etc/passwd文件,複製當前家目錄下
[root@xiaxiangming ~]# cp /etc/passwd ~/
[root@xiaxiangming ~]# ls
11.txt anaconda-ks.cfg Documents initial-setup-ks.cfg Music Pictures Templates wget-log
aaa.txt Desktop Downloads ls.txt passwd Public Videos

三、命令模式

注意:該模式是打開文件的第一個看到的模式(打開文件即可進入)
1、光標移動
①光標移動到行首
按鍵:shift+6(T字母上面的6,不要按小鍵盤的6)
②光標移動到行尾
按鍵:shift+4(R字母上面的4,不要按小鍵盤的6)
③光標移動到首行
按鍵:gg
④光標移動到末行
按鍵:G
⑤翻屏
向上翻屏:按鍵CTRL+b (before) 或 PgUp
向下翻屏:按鍵CTRL+f (after) 或 PgDn

2、複製操作
①複製光標所在行
按鍵:yy
粘貼:在想要粘貼的地方按下p鍵
②:以光標所在行爲準(包含當前行),向下複製指定的行數
按鍵:數字yy
粘貼:按p鍵
③可視化複製
按鍵:ctrl+v,然後按下↑ ↓ ← →方向鍵來選中需要複製的區塊,按下yy鍵進行復制,最後按下p鍵粘貼
③剪切/刪除光標所在行
按鍵:dd (刪除之後下一行上移)
注意:dd嚴格意義上說是剪切,但是如果剪切了粘貼就是刪除的效果。
②剪切/刪除光標所在行爲準(包含當前行),向下刪除/剪切指定的行
按鍵:數字dd (刪除之後下一行上移)
③剪切/刪除光標所在的當前行,但是刪除之後下一行不上移
按鍵:D (刪除之後當前行會變成空白行)
4、撤銷/恢復
撤銷:輸入:u 或者 u (undo)
恢復:ctrl+r (恢復之前的撤銷)
5、擴展1:光標的快速移動
①快速將光標移動到指定的行
按鍵:數字G
②以當前光標爲準向上、向下移動n行
按鍵:數字↑ 數字↓
③以當前光標爲準向左向右移動n字符
按鍵:數字← 數字→
④末行模式下的快速移動方式:移動到指定行
按鍵:輸入英文”:“,其後輸入行數數字,按下回車

四、模式間的切換(重點)

1、命令行模式可以通過輸入“:英文”切換到末行模式
2、末行到命令行模式可以通過
②按一下esc 或 按兩下esc
③刪除末行中的全部命令
3、命令模式切換到編輯模式
按鍵:i 或 a
4、編輯模式切換到命令行模式
按鍵:esc

五、末行模式

進入方式:由命令行進入,按下:即可進入
退出方式: a.按下esc
b.連按下2次esc鍵
c.刪除末行全部輸入字符
①保存操作(write)
輸入:":w" 保存文件
輸入:":w 路徑" 另存爲
②退出(quit)
輸入:":q" 退出文件
③保存並退出
輸入:":wq" 保存並且退出
④強制不保存退出
輸入:":q!" 表示強制退出,剛纔做的修改操作不做保存
⑤調用外部命令(瞭解)
輸入:":!外部命令"
當外部命令執行結束之後按下任意鍵回到vim編輯器
⑥搜索/查找
輸入:”/關鍵詞“
例如:想要搜索一下sbin關鍵詞
/sbin
在搜索結果中切換上一個/下一個結果:N/n (next)
如果需要取消高亮,則需要輸入":nohl" (no highlight)
⑦替換
😒/搜索的關鍵詞/新內容 替換光標所在行第一處匹配成功的內容
😒/搜索的關鍵詞/新的內容/g 替換光標所在行的全部符合條件的內容
:%s/搜索的關鍵詞/新內容 替換文件中每一行第一處符合條件的內容
:%s/搜索的關鍵詞/新內容/g 替換文件中所有符合條件的內容
%表示整個文件
g表示全局(global)
⑧顯示行號
按鍵:":set nu" (number)
如果想要取消顯示,則輸入:":set nonu"
⑨擴展2:用vim同時打開多個文件,在末行模式下切換

vim passwd wget-log ls.txt

查看當前已經打開的文件名稱:":files"
ftp❌14:50:FTP User:/var/ftp:/sbin/nologin
:files
1 %a "passwd" line 48
2 "wget-log" line 0
3 "ls.txt" line 0
Press ENTER or type command to continue

注:在%a的位置有兩種顯示方式
%a:a=active,表示當前正在打開的文件;

:表示上一個打開的文件

打開多個文件以後怎麼切換:
a.如果需要指定切換文件的名稱,則可以輸入:":open wget-log"
:files
1 # "passwd" line 48 //#表示上一個打開的文件
2 %a "wget-log" line 1 //%a表示當前打開的文件
3 "ls.txt" line 0
Press ENTER or type command to continue
b.可以通過其他命令切換上一個文件/下一個文件
輸入:":bn"切換到下一個文件(Back next)
輸入:":bp"切換到上一個文件(back prev)

六、編輯模式

進入方式:
i:在光標所在字符前開始插入
a:在光標所在字符後開始插入
o:在光標所在行的下面另起一行插入
I:在光標所在行的行尾開始插入,如果行首有空格則在空格之後插入
O:在光標所在行的上面另起一行開始插入
S:刪除光標所在行並開始插入
退出方式:按esc

七、實用功能

1、代碼着色
如何控制着色顯示與否?
顯示:":syntax on" syntax:表示語法
關閉顯示:":syntax off"
2、vim中計算器的使用
當在編輯文件的時候突然需要使用計算器去計算一些公式,此時需要用計算器,但是需要退出,vim自身集成了一個簡易的計算器。
a.進入編輯模式
b.按下按鍵"ctrl+R",然後輸入=,此時光標會變到最後一行
c.輸入需要計算的內容,按下回車

八、擴展

1、vim的配置
vim是一款編輯器,編輯器也有配置文件
vim配置有三種情況:
a.在文件打開的時候在末行模式下輸入的配置(臨時的)
b.個人配置文件(~/.vimrc,如果沒有可以自行新建)
c.全局配置文件(vim自帶,/etc/vimrc)
①新建好個人配置文件之後進入編輯
②在配置文件中進行配置
比如顯示行號:set nu
1 set nu
2 syntax on
3
配置好之後vim打開文件既可以看到配置的效果(顯示行號和着色)
問題:如果某個配置項,在個人配置文件與全局配置文件產生衝突時以個人配置的效果爲準
如果針對同一個配置項,個人配置文件中存在,則以個人配置文件爲準,如果個人配置文件中不存在這一項,則以全局配置爲準
3、作用:相當於創建一些屬於自己的自定義命令
例如:在Windows下有cls命令,在Linux下可能因爲沒有這個命令而不習慣清屏,現在可以通過別名機制來解決這個問題,可以自己創建出cls命令
別名機制依靠一個別名映射文件:~/.bashrc
[root@xiaxiangming ~]# cat ~/.bashrc

.bashrc

User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

Source global definitions

if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
注意:要創建新的命令生效,需要重新登錄當前用戶
4、退出方式
回顧:之前vim中退出編輯的文件可以使用":q"或者":wq"
除了上面的方法外,vim還支持另一個保存方法":x"
說明:
①":x"在文件沒有修改的情況下,表示直接退出,在文件修改的情況下是保存並退出
②如果文件沒有被修改,但是使用wq進行退出的話,則文件的修改時間會被更新;但使用x退出的話文件修改時間不會被更新。
因此建議以後使用:x來進行對文件的保存退出。
但是:不要使用X,X表示對文件進行加密操作。

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