1. 程式人生 > 其它 >[vim編輯器、vim高階]

[vim編輯器、vim高階]

[vim編輯器、vim高階]

什麼是vim

可以理解為windows下⾯的⽂本編輯器,⽐如記事本,⽐如word⽂檔。
vi編輯器通常被簡稱為vi,⽽vi⼜是visual editor的簡稱。它在Linux上的地位就像Edit程式在DOS上⼀樣。
它可以執⾏輸出、刪除、查詢、替換、塊操作等眾多⽂本操作,⽽且⽤戶可以根據⾃⼰的需要對其進⾏定製,這是
其他編輯程式所沒有的。
 
vi 編輯器並不是⼀個排版程式,它不像Word或WPS那樣可以對字型、格式、段落等其他屬性進⾏編排,它只是⼀
個⽂本編輯程式。沒有選單,只有命令,且命令繁多。

vim編輯器的操作模式

#1、命令⾏模式:在編輯模式下按下ESC鍵返回命令⾏模式。
vi的預設模式。在這⼀模式中,所有的輸⼊被解釋成vi命令,可以執⾏修改、複製、移動、貼上和刪除正⽂等命令,也可以進⾏移動游標、搜尋字串和退出vi的操作等。


#2、編輯/插⼊模式:輸⼊a、i、o之⼀
在編輯模式中,可以往⼀個⽂件中輸⼊正⽂。在這⼀模式下,輸⼊的每⼀個字元都被vi編輯器解釋為輸⼊的正⽂。
使⽤ESC鍵返回命令⾏模式。
a:進⼊插⼊模式並在游標之後進⾏新增。
i:進⼊插⼊模式並在游標之前進⾏插⼊。
o:進⼊插⼊模式並在當前(游標所在)⾏之下開啟新的⼀⾏。


#3、擴充套件/末⾏模式:輸⼊冒號:
在⼀些UNIX系統上也叫最後⼀⾏模式。在這⼀模式下,可以使⽤⼀些⾼級編輯命令,如搜尋和替代字串、存檔或退出vi編輯器等。要進⼊最後⼀⾏模式,需要在命令⾏模式中輸⼊冒號(:),冒號這⼀操作將把游標移到螢幕的最後⼀⾏。

vi與vim之間的區別

vim是vi的升級版
學習一種即可  都一樣~

vi\vim編輯器常用功能

寫入
	a : 進入插入模式,並在游標之後進行插入
	i : 進入插入模式,並在游標之前進行插入
	o : 進入插入模式,並在游標所在行開啟下一行
查詢
	在命令列模式下按下鍵盤上的/,然後輸入要查詢的內容,搜尋到內容之後,游標自動定位並設定顏色。

刪除
	1、進入插入模式,像修改文字一樣去刪除檔案。
	2、連續按d鍵兩次,刪除一行內容
	3、先按一個數字n,然後按d鍵兩次,向下刪除n行

複製
	1、連續按y鍵兩次,複製當前游標所在行,p鍵貼上
	2、先按一個數字n,然後按y鍵兩次從游標所在行向下複製n行,p鍵貼上

儲存
	首先進入末行模式
	w : 儲存
	q : 退出(!強制退出,退出之後未儲存內容丟失)

補充:
	x : 刪除游標包含的內容
	u : 返回上一步,只在同一次編輯中有效
	U :還原上一步
	$ : 游標執行到當前行的行尾
	0 : 游標執行到當前行的行首
	G :游標移動到末行的行首
	gg: 游標移動到首行的行首
	H :看到的介面中執行到第一行的行首
	M :看到的介面中執行到中間行的行首
	L :看到的介面中執行到最後一行的行首

可視塊:
	ctrl + v: 選擇你要修改的內容,
		刪除:x
	ctrl + v: 再次進入可視塊
		編輯:shift + i(退出可視塊編輯模式按ESC鍵,等一會才會同步修改內容)

[vim高階]

# 定位到某一行
:n  跳轉到n行  

# 內容替換
:開始位置,結束的位置  s/被替換內容/替換的內容

1、指定位置
	2,10 s/Hello/nihao 從第2行開始,到第十行結束
	2,$  s/Hello/nihao 從第二行開始,到最後
	:%   s/Hello/nihao 全文替換

2、寫入檔案
	:w 寫入檔案
	:w /root 寫入新的檔案
	:1,3 w /root/bcd.txt 指定行寫入到新的檔案中
	:1,3 w! /root/bcd.txt 指定行強制寫入到新的檔案中

3、同時編輯多個檔案
	vim -o : 水平分割
	vim -O : 垂直分割
	

4、同時對比編輯兩個不同檔案
	ctrl + ww : 切換兩個(多個)螢幕操作
	
	注:有幾個檔案則儲存幾次
	
5、diff 顯示出兩個檔案中的不同之處
	diff 檔名1  檔名2
	(一般用於判斷兩個檔案之間有什麼區別)
	vimdiff  檔名1 檔名2