Linux經常使用命令(2)--vi (vim)文本編輯工具

1、vi 編輯器的基本概念 
  vi 編輯器是Linux系統自帶的一種功能強大的文本編輯工具。
  vi 能夠分爲三種狀態,分別是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode)。不過咱們在使用時,通常將「底行模式」也算成是「命令行模式」。 三種模式的功能以下:
  • 命令行模式:控制屏幕光標的移動,字符、字或行的刪除,移動複製某區段,以及從命令行模式進入插入模式或底行模式。
  • 底行模式:    將文件保存或退出vi編輯器,也能夠用來設置編輯環境,如查找字符串、列出行號等(底行輸入" : + 命令 "的方式)。
  • 插入模式:  只有在插入模式下,才能夠作文本的編輯和修改;在插入模式下,按「ESC」鍵可回到命令行模式。

 

2、快捷導航 - vi 經常使用命令
  
  注:如下介紹vi命令時,統一按照兩種模式進行區分,即:命令行模式、插入模式。
 
一、從【命令行模式】切換到【插入模式】
  • 按「i」鍵:進入插入模式後,是從當前光標位置開始輸入字符;
  • 按「a」鍵:進入插入模式後,是從當前光標的下一個位置開始輸入字符;
  • 按「o」鍵:進入插入模式後,是在當前光標之下插入新的一行,從行首開始輸入字符;
  • 按「shift + o」(即:大寫‘’O‘’)鍵:進入插入模式後,是在當前光標之上插入新的一行,從行首開始輸入字符。
二、從【插入模式】切換到【命令行模式】
  • 按「ESC」鍵:在【插入模式】下,按「ESC」鍵,切換到【命令行模式】。 
 
 
三、【命令行模式】保存修改的內容、退出vi編輯器
: w filename    #保存編輯的文件內容,並將文件的名稱設爲filename
: wq            #保存編輯的文件內容,並退出vi 編輯器
: q!            #不保存編輯的內容,並直接退出vi 編輯器

4【命令行模式】文本內容被修改後,對修改的內容進行撤銷、撤銷取消c#

u           #在命令模式下,按「u」鍵,撤銷修改的內容,即將內容回退到上次修改以前的狀態
Ctrl + r    #在命令模式下,按「Ctrl+r」鍵,撤銷取消,即在執行【u撤銷】以後,再執行【Ctrl + r】將數據恢復到【u撤銷】操做以前的狀態

 

 

五、【命令行模式】移動光標--上下翻頁
 
vi能夠使用鍵盤的「home」、「end」鍵,來進行上下翻頁。
vi也能夠使用「crtl + 小寫字母」,來控制翻頁。
  • 按「ctrl」+「b」:屏幕往「後」移動一頁。
  • 按「ctrl」+「f」:屏幕往「前」移動一頁。
  • 按「ctrl」+「u」:屏幕往「後」移動半頁。
  • 按「ctrl」+「d」:屏幕往「前」移動半頁。
六、【命令行模式】移動光標--顯示行號、跳轉到指定行
:set  nu     #顯示行號
:set  nonu   #取消顯示行號
:行號         #跳到指定行 
:1 #跳到文件的第一行 :$ #跳到文件的最後一行
gg           #跳到文件的第一行
Shift + g    #跳到文件的最後一行

 7、【命令行模式】移動光標--上下左右編輯器

  vi能夠直接用鍵盤上的上下左右鍵來控制光標的移動。也能夠用小寫英文字母,來控制光標的移動。
  • 「h」:向左
  • 「j」:向下
  • 「k」:向上
  • 「l」:向右

八、【命令行模式】移動光標--快速跳到本行的指定位置
工具

按「$」:移動到光標所在行的「行尾」。
按「^」:移動到光標所在行的「行首」
按「w」:光標跳到下個字的開頭
按「e」:光標跳到下個字的字尾
按「b」:光標回到上個字的開頭

 

九、【命令行模式】刪除文字、刪除行spa

「x」:每按一次,刪除光標所在位置的「後面」一個字符。
「#x」:例如,「6x」表示刪除光標所在位置的「後面」6個字符。
「X」:大寫的X,每按一次,刪除光標所在位置的「前面」一個字符。
「#X」:例如,「20X」表示刪除光標所在位置的「前面」20個字符。
「dd」:刪除光標所在行。
「#dd」:從光標所在行開始刪除#行

十、【命令行模式】複製文字、複製行命令行

「yw」:將光標所在之處到字尾的字符複製到緩衝區中。
「#yw」:複製#個字到緩衝區
「yy」:複製光標所在行到緩衝區。
「#yy」:例如,「6yy」表示拷貝從光標所在的該行「往下數」6行文字。
「p」:將緩衝區內的字符貼到光標所在位置。注意:全部與「y」有關的複製命令都必須與「p」配合才能完成複製與粘貼功能。

 

十一、【命令模式】查找字符
「/關鍵字」:先按「/」鍵,再輸入您想尋找的字符,若是第一次找的關鍵字不是您想要的,能夠一直按「n」會日後尋找到您要的關鍵字爲止。
「?關鍵字」:先按「?」鍵,再輸入您想尋找的字符,若是第一次找的關鍵字不是您想要的,能夠一直按「n」會往前尋找到您要的關鍵字爲止。

注:"n"正向查找,"shift + n"反向查找

 

十二、【命令行模式】替換字符code

「r」:替換光標所在處的字符(僅替換當前光標所在的一個字符)。
「R」:從當前光標所在位置開始,替換光標所在之處的字符,直到按下「ESC」鍵爲止。

1三、【命令行模式】按字進行更改(至關於刪除指定的一個字 或 多個字)blog

「cw」:更改光標所在處的字到字尾處
「c#w」:例如,「c3w」表示更改3個字
相關文章
相關標籤/搜索