1. 程式人生 > >linux的vi和vim命令的使用

linux的vi和vim命令的使用

  • vi是Linux發行版本中系統內建的一個編輯器,vim具有程式編輯能力,是vi的增強版,vim具有程式碼補全,字型顏色辨別語法錯誤等功能.

  • vi或vim分為三種模式

  • 正常模式:

    • 當你使用啟動vi或vim的時候,預設就進入了正常模式,這個模式下你可以使用上下左右鍵來控制游標的移動,亦可以進行刪除,複製,黏貼等操作
  • 編輯模式(或insert模式)

    • 在正常模式下 輸入字元"i,I,o,O,a,A"等人一個字母,之後就會進入編輯模式,但是通常情況下,都會使用"i"
  • 命令列模式

    • 在此模式下,提供相關的指令,來完成儲存,讀取,替換,離開vim,顯示行號等功能
  • 示例:使用vim編寫一個HelloWorld.java程式

  1. 開啟終端,使用 vim + 檔名稱的方式,開啟一個檔案(如果這個檔案不存在,vim會在當前路徑自動建立一個)
vim HelloWorld.java

在這裡插入圖片描述

  1. 當進入普通模式的時候,按 “i” 鍵 進入編輯模式
i

在這裡插入圖片描述

  1. 輸入內容
public class HelloWorld{
	public static void main(String[] args){
		System.out.println("Hello World!");
	}
}

在這裡插入圖片描述

  1. 現在按"Esc"鍵,返回到普通模式,然後輸入":wq"再按回車,進行儲存退出
:wq

在這裡插入圖片描述

  • 退出之後,使用 cat + 檔名的方式,檢視HelloWorld.java的內容是否被儲存
cat HelloWorld.java

在這裡插入圖片描述

  • vim的命令列模式的時候,輸入:wq!,的感嘆號的意思是強制退出,而輸入":q"的意思是不儲存退出

在這裡插入圖片描述

vim和vi的常用快捷鍵

  • 貼上
p
  1. 拷貝當前行
yy
  • 如果要拷貝當前行向下5行,則使用5yy`
  1. 刪除當前行
dd
  • 如果要刪除當前行向下5行,則使用5dd
  1. 如果要查詢某個單詞,則可以在命令列模式下使用
/關鍵字
  • 然後回車,如果要查下一個關鍵字,輸入"n"
  1. 設定檔案行號
set nu
  1. 取消檔案行號
set nonu
  1. 到達檔案最後一行(大寫的G)
G
  1. 到達檔案第一行
gg
  1. 撤銷(例如撤銷剛才輸入的內容)
u
  1. 將游標移動到指定行數(例如,跳到20行,普通模式下輸入20 shift g)
行數 shift g