天天看點

16.linux文本編輯

Linux中,很多系統的管理和功能的配置都需要修改系統配置檔案,而幾乎所有的配置檔案都是文本檔案,當需要對Linux系統進行管理和設定時,管理者就要使用文本編輯器對相應的配置檔案進行修改,熟練使用文本編輯器是很有必要的

文本編輯器分類:

行編輯器和全螢幕編輯器:

行編輯器比較古老,現在已經消失,以行為機關進行文本編輯,即使發現上一行有錯誤也不能傳回修改

全螢幕編輯器:可以在螢幕上編輯檔案中所有行的文本内容,本書主講的Vi就是

字元界面編輯器和圖形界面編輯器

字元界面産生時間較長,早期的Unix就是工作在字元界面下,占用資源小,運作效率高,使用于各種場合,現在仍然是最主要的編輯器。

圖形界面編輯器是在圖形界面下運作的文本編輯程式,工作在X-Window環境中。使用滑鼠進行操作,簡單易學,減少了編輯難度

文本編輯器介紹:

Vi:發明者是bill joy,是最常用的字元界面文本編輯器,RHEL4預設支援Vim,是vi的加強版本,也成為vi。一直以來Unix把vi作為預設的編輯器,通過長時間的發展,現在的vi不僅是一個編輯器,還是一個功能強大的編輯平台,可以完成包括程式編寫在内的各種文本編輯任務

Emacs:GNU軟體,專為編輯程式源代碼編寫的,支援常用程式設計語言的編寫

Nano:較現代的字元界面的文本編輯器,界面較vi友好,在底部有幫助菜單

Gedit:Linux中圖形環境的文本編輯器

2、vi文本編輯器

   Vi的模式:vi編輯器獨有

A 指令模式:vi編輯器啟動後預設進入的模式,此模式下所有的操作(組合鍵和輸入字元)被當作指令來處理,可以從指令模式進入到其他兩種模式

B 輸入模式:處于文本的編輯狀态,可以對檔案進行各種編輯操作,标志是在左下角有“—INSERT--”标志。按“ESC”進入到指令模式

C 末行模式:vi編輯器中的一些複雜操作,需要在末行模式下完成。在指令模式下輸入“:”後進入末行模式,出現在目前編輯螢幕的最底端,輸入各種末行操作指令,按“ESC”進入到指令模式

Vi編輯器的基本使用

Vi編輯器啟動與退出,這裡vi=vim(指令别名)

#vi filename   直接啟動vi編輯器并進入檔案發filename的編輯狀态。Filename存在則進行編輯,filename不存在則建立此檔案并進入編輯狀态

退出vi編輯環境

末行模式指令  :q!     不儲存目前的編輯内容而退出

檔案操作:

打開新檔案:

在vi編輯環境中打開新檔案

使用末行指令  :e  filename

讀取檔案内容到目前檔案

末行模式下使用指令   :r   filename

儲存檔案:

在vi編輯器中儲存檔案:

使用末行指令  :w  filename

如果vi編輯器中所編輯的檔案已經命名,可以直接使用w指令儲存

另存為:

末行模式下使用指令   :w  filename1

退出vi編輯器

:q   使用此指令檔案必須已經儲存

:wq  儲存檔案同時退出編輯器(使用的最多)

:q!  不儲存退出

光标移動:指令模式下

除了上下左右方向鍵之外,還有h、j、k、l四個鍵分别代表左下上右

^(shift+6)快速移動到本行行首字元,$(shift+4)快讀移動到本行行尾字元

顯示行号是末行指令  :set  nu  

取消行号是末行指令  :set  nonu

行間快速跳轉是在指令模式下

1G  到檔案的首行

G   到檔案末行

#G   跳轉到第#行

編輯操作:

進入輸入模式:在指令模式下

i 在目前光标處進入插入狀态

a 在目前光标後進入插入狀态

o 在目前行的下一樣插入一行,處于插入狀态

I 光标移動到目前行首,處于插入狀态

A 光标移動到目前行尾,處于插入狀态

O 在目前行上一行插入一行,處于插入狀态

輸入模式的操作:

上下左右方向鍵移動光标

使用home和end快速定位光标到行首和行尾

使用page up和page down進行文本翻頁

使用backspace鍵删除光标左側字元

使用delete鍵删除光标位置的字元

删除操作:

指令模式下

x 删除光标處字元

dd 删除光标所在行

nx 删除目前光标處向右3個字元

ndd 删除目前行

撤銷操作:

u 取消最近一次操作,可多次使用u指令恢複已進行的多步操作

U 取消目前行進行的所有操作

Ctrl+r 對u指令撤銷的操作進行恢複

複制操作:

yy:複制目前行的内容到緩存區

nyy:複制目前行及以下n-1行到緩存區

末行模式下  :m,ny    對檔案中第m行到第n行之間的文本進行複制

粘貼操作:

在指令模式下輸入字母p

查找和替換:

自上而下:在末行模式下輸入   :/word

輸入n,代表查找下一個比對的字元

輸入N,代表查找上一個比對的字元

自下而上:在末行模式下輸入  :?word

N和n用法相同

符合條件的字元會高亮顯示,取消高亮顯示,在末行模式下輸入:nohl

替換操作:

行内替換:

末行指令:s/old/new,old是被替換的字元串,new是替換成的字元串。值替換第一個符合條件的字元串

末行指令:s/old/new/g,替換一行裡面所有符合條件的字元串

末行指令:n,ms/old/new/g,區域替換

末行指令:%s/old/new/g,整篇文檔替換

末行指令:%s/old/new/gc,整篇文檔替換,替換時給于确認

多檔案操作:

指令行下:  vi filename1 filename2 filename3  同時打開多個檔案

使用末行模式下指令:args

末行指令:next和prev  分别是編輯下一個檔案和上一個檔案

末行指令:first和last   是編輯第一個和最後一個檔案

打開檔案的使用使用選項-o 是上下分屏編輯;使用-O 是左右分屏編輯

使用組合鍵:    CTRL+W+W在螢幕之間進行滑鼠切換

繼續閱讀