說到vim就不得不提到vi,vi是全部Unix及linux系統下標準的編輯器,而Vim是一個相似於vi的著名的功能強大、高度可定製的文本編輯器,在Vi的基礎上改進和增長了不少特性。VIM是自由軟件。Vim廣泛被推崇爲類Vi編輯器中最好的一個 linux
vim和vi同樣是一個全屏幕文本編輯器,它沒有菜單,只有命令。能夠執行輸出、刪除、查找、替換、塊操做等衆多文本操做,並且用戶能夠根據本身的須要對其進行定製,這是其餘編輯程序所沒有的。,它不是一個排版程序,它不像MS Word 或 WPS 那樣能夠對字體、格式、段落等其餘屬性進行編排。shell
爲何要使用vim?vim
在linux下的文本編輯器衆多,除了vi和vim還有emacs、pico、nano、joe等,這些工具都有各自的有點,可是有幾點是其它編輯工具所不能比擬的編輯器
1 全部的類Unix系統都內建vi,其它的編輯工具則不必定,而vim至關因而vi的升級版ide
2 不少軟件的編輯界面都會調用vi,如後面提到的crontab、edquota等工具
3 vim具備程序編輯能力,能夠主動以字體顏色標識語法的正確性,方便代碼編寫學習
4 程序簡單,編輯速度很是快字體
介紹就到這裏,咱們來看一下基本使用this
因爲vi/vim是一個全屏幕的文本編輯器,它工做在三種模式下:分別是命令模式、輸入模式和末行模式。能夠分別從命令模式切換到輸入模式和末行模式,也能夠從末行模式或輸入模式切換到命令模式,可是輸入模式與末行模式之間不能互相切換。code
第一種:命令模式,當我使用「vim myfile」命令打開myfile這個文件時就處於命令模式,屏幕左下角爲文件名(myfile),1L 表示本文件有1 行,26C 表示此文件有26 個字符。1,25表示光標當前位置,在此模式下用戶能夠輸入命令來進行文件存盤、移動光標、刪除字符、撤消命令和重複命令等操做,還能夠設置編輯環境。
this is the command mode. ~ ~ 表示沒有內容 "myfile" 1L, 26C 1,25 所有
第二種:插入模式,又叫輸入模式。在輸入模式下,屏幕的左下方會出現INSERT (插入)字樣。在輸入狀態下,用戶能夠輸入文本的內容。
this is the command mode. ~ ~ ~ ~ -- 插入 -- 1,25 所有
第三種:末行模式。只要在命令模式下輸入命令「:」便可進入末行模式。在末行模式下,能夠進行保存文件、退出vi、進行查找和替換等操做。
this is the command mode. ~ ~ ~ ~ :q!
三種模式介紹完了,咱們看下vim的使用,這裏面咱們仍是按照三種模式來對vim的使用進行說明
命令模式
ctrl+f 下一頁,至關於鍵盤上的pagedown
ctrl+b 上一頁,至關於鍵盤上的pageup
0 光標移動到行首
$ 光標移動到行尾
G 光標移動到文件的最後一行
gg 光標移動到文件的第一行
n n爲數字,光標向下移動n行
/word word爲關鍵字,以光標所在處爲起點,向後搜索指定的關鍵字
?word 以光標所在處爲起點,向前搜索指定的關鍵字
/word和?word在搜索過程當中可使用n/N來指定下一個或者是上一個
dd 刪除光標所在行
yy 複製光標所在行
nyy n爲數字,以光標所在處爲起點,向後複製n行
p/P 將複製的內容粘貼在光標所在行的下(p)或上(P)
u 撤銷操做
從命令模式進入輸入模式
a 從光標所在位置後面開始輸入資料,光標後的資料隨增長的資料向後移動。
i 從光標所在位置前面開始插入資料,光標後的資料隨新增資料向後移動。
o 在光標所在行下新增一行並進入輸入模式。
從命令模式進入到末行模式
:w 保存
:w! 強制保存,文件爲只讀時使用
:q 不保存退出
:q! 強制不保存退出
:wq 保存退出
:wq! 強制保存退出
vim的基本功能咱們就介紹到這裏,下面看下有哪些額外功能
v | 字符選擇,選中光標通過的地方 |
---|---|
V | 選中光標通過的行 |
[Ctrl]+v | 區塊選擇 |
y | 複製選中的部分 |
d | 刪除選中的部分 |
p | 將剛纔複製的部分粘貼到光標所在處 |
因爲個別版本的linux默認值安裝vi,因此你須要額外安裝vim的軟件包,如何安裝軟件包咱們會在後續的課程中講解,另外vim在字符界面下不能輸入中文,而在圖形界面下可否輸入中文則取決於系統中是否安裝了中文輸入法
總結
本節課咱們介紹了linux的文本編輯器vim,它是一款十分強大的文本編輯軟件,咱們只學習了它的經常使用功能,更多的功能須要你們在平常使用中不斷的去發現,不斷的去熟悉本節課的內容就到這裏,謝謝!