目錄
- 一.關于vim編輯器
- 二.vim編輯器的模式
- 三.一般模式下的基礎操作
- 四.V模式(列模式)的基礎操作
- 五.命令模式下的基礎操作
- 六.自定義vim環境
- 七.vim同時打開多個檔案
- 八.比較兩個檔案的內容
一.關于vim編輯器
Vim是一個類似于Vi的著名的功能強大、高度可定制的文本編輯器,在Vi的基礎上改進和增加了很多特性,VIM是自由軟體,vim可以當作
vi的升級版本,他可以用多種顏色的方式來顯示一些特殊的資訊,
[root@node5 ~]# rpm -qf `which vim`
vim-enhanced-7.4.160-5.el7.x86_64
[root@node5 ~]# rpm -qf `which vi`
vim-minimal-7.4.160-2.el7.x86_64
#從輸出可以看到,vim是vi的增加版,最明顯的區別就是vim可以語法加亮,它完全兼容vi
二.vim編輯器的模式
1.vim編輯器有三種模式,第一次進入是一般模式,左下角出現“Insert” 是編輯模式,輸入:是命令列模式,
- ? 從編輯模式到命令列模式怎樣切換? 編輯模式->esc->一般模式->: ->命令模式
- ? 一般模式怎樣進入編輯模式? 按a或i或o或A或I或O

2.總結:vim如何進入其它模式?
- ? a A o O i I 都是可以進行插入,編輯模式
- ? : 進入命令列模式
- ? v 進入可視模式
- ? ctrl+v 進入可視塊模式
- ? V 進入可視行模式
- ? R 擦除、改寫,進入替換模式
- ? 你進入以上模式后,想要退出 ,按esc
三.一般模式下的基礎操作
i 當前字符之前插入 (游標前)
I 行首插入 (行首)
a 當前字符之后插入 (游標后)
A 行尾插入(行尾)
o下一行插入 (另起一行)
O上一行插入(上一行插入)
x 向后洗掉一個字符 等同于delete
X 向前洗掉一個字符
u 撤銷一步 每按一次就撤銷一次
r 替換, "r"命令不是一個運算子命令,它等待你鍵入下一個字符用以替換當前游標下的那個字符,"r"命令前輟以一個命令記數是將多個字符都替換為即將輸入的那個字符,要把一個字符替換為一個換行符使用"r",它會洗掉一個字符并插入一個換行符,在此處使用命令記數只會洗掉指定個數的字符:"4r"將把4個字符替換為一個換行符,
#游標定位
hjkl 左下上右
0 和 home鍵表示切換到行首, $和end鍵表示切換到行尾
gg 快速定位到檔案的首行 , G定位到未行
3gg 或者 3G 快速定位到第3行
/string(字串) -----找到或定位你要找的單詞或內容,如果相符內容比較多,我們可以通過N、n來進行向上向下查找,并且vi會對查找到的內容進行高亮顯示,取消用 :noh
/^d ----^意思表示以什么開頭 ,,查找以字母d開頭的內容
/t$ -----$意思表示以什么結尾,,查找以字母t結尾的內容
vim + a.txt 打開檔案后,游標會自動位于檔案的最后一行
#對文本進行編輯操作
#洗掉、復制、粘貼、撤銷
y 復制(以字符為單位):表示對單個字符進行復制,如果要復制整行,用yy(以行為單位),"y"運算子命令會把文本復制到一個暫存器3中,然后可以用"p"命令把它取回,因為"y"是一個運算子命令,所以你可以用"yw"來復制一個word. 同樣可以使用命令記數,如下例中用"y2w"命令復制兩個word,"yy"命令復制一整行,"Y"也是復制整行的內容,復制當前游標至行尾的命令是"y$",
復制N行: Nyy ,比如: 2yy ,表示復制2行
dd(洗掉,以行為單位,洗掉當前游標所在行)
洗掉N行: Ndd ,比如: 2dd ,表示洗掉2行
p : P粘貼
剪切: dd
x 洗掉游標所在位置的字符
D 從游標處洗掉到行尾
u 撤銷操作
ctrl+r 還原撤銷過的操作,將做過的撤銷操作再還原回去,也就是說撤銷前是什么樣,再還原成什么樣
r 替換,或者說用來修改一個字符, "r"命令不是一個運算子命令,它等待你鍵入下一個字符用以替換當前游標下的那個字符,"r"命令前輟以一個命令記數是將多個字符都替換為即將輸入的那個字符,要把一個字符替換為一個換行符使用"r",它會洗掉一個字符并插入一個換行符,在此處使用命令記數只會洗掉指定個數的字符:"4r"將把4個字符替換為一個換行符,
四.V模式(列模式)的基礎操作
1.進入v模式 移動游標選擇區域,編程的時候進行多行注釋的步驟:
- ? ctrl+v 進入列編輯模式
- ? 向下或向上移動游標,把需要注釋、編輯的行的開頭選中起來
- ? 如果需要洗掉的話,就直接輸入x鍵進行洗掉
- ? 如果要添加內容,就按大寫的I
- ? 再插入注釋符或者你需要插入的符號,比如"#"
- ? 再按Esc,就會全部注釋或添加了
2.洗掉:再按ctrl+v 進入列編輯模式;向下或向上移動游標 ;選中注釋部分,然后按d, 就會洗掉注釋符號,
五.命令模式下的基礎操作
:w 保存 save
:w! 強制保存
:q 沒有進行任何修改,退出 quit
:q! 修改了,不保存,強制退出
:wq 保存并退出
:wq! 強制保存并退出
:x 保存退出
#呼叫外部檔案或命令
假設:我想要寫入我的網卡MAC地址,我要查看一下,當前在vim編輯檔案,照著寫,這樣好麻煩,
在命令列模式下操作:
:!ifconfig 呼叫系統命令
!+命令
讀取其他檔案,(把其他檔案中的內容追加到當前檔案中)
:r /etc/hosts
#文本替換
#格式:范圍(其中%所有內容) s分隔符 舊的內容 分隔符 新的內容(分隔符可以自定義)
#默認是每一行的第一個符合要求的詞(/g全部)
:1,3 s/bin/xuegod #替換第1到3行中出現的第一個bin進行替換為xuegod
:1,3 s/bin/xuegod/g #替換第1到3行中查找到所有的bin進行替換為xuegod
:3 s/xue/aaaaa #只把第3行中內容替換了
:% s/do/xuegod/g #將文本中所有的do替換成xuegod
:% s/do/xuegod/gi #將文本中所有的do替換成xuegod, 并且忽略do的大小寫
:% s@a@b@g #將文本中所有的a替換成b
六.自定義vim環境
可以根據自己的喜好自定義vim環境,
#臨時設定vim環境
:set nu #設定行號
:set nonu #取消設定行號
:noh #取消高亮顯示
#永久設定vim環境
[root@node5 ~]#vim /etc/vimrc #設定后會影響到系統所有的用戶
[root@node5 ~]#vim ~/.vimrc #在用戶的家目錄下,創建一個.vimrc,這樣只影響到某一個用戶,沒有自己建一個
例:
[root@node5 ~]# cat /root/.vimrc
set nu
七.vim同時打開多個檔案
1.以上下形式,打開兩個檔案,使用ctrl+ww在兩檔案之間進行切換編輯
#小寫的o上下分屏
[root@node5 ~]#vim -o /etc/passwd /etc/hosts
2.以左右方式打開兩個檔案,使用ctrl+ww在兩檔案之間進行切換編輯
#大寫O左右分屏
[root@node5 ~]#vim -O /etc/passwd /etc/hosts
八.比較兩個檔案的內容
比較兩個檔案的內容有兩種方法:diff和vimdiff,
[root@node5 ~]#cp /etc/passwd mima.txt
[root@node5 ~]#echo aaa >> mima.txt
[root@node5 ~]#diff /etc/passwd mima.txt
40a41
> aaa
[root@node5 ~]#vimdiff /etc/passwd mima.txt
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/205830.html
標籤:其他
上一篇:Microsoft Edge - 把你要訪問的網頁安裝為應用程式
下一篇:cobbler匯入報錯
