文本編輯
1. 目標及幾種模式
1.1. 熟悉 Linux 系統中經常使用的編輯器以及編輯器分類; vi Emacs nano gedit
1.2. 熟練掌握 VI 編輯器的模式切換;命令模式 輸入模式 末行模式
1.3. 熟練掌握 VI 編輯器的各類模式下的操做;
命令模式:
----VI 編輯器的啓動與退出; vi vi 文件名 :q!
----文件操做;
----光標移動操做;
h l k j ctrl+f ctrl+b ^ $ w G 1G #G I a o cw c$ c^ x dd dw de J u U yy yw y$ p
----編輯操做;
----查找與替換操做;
----VI 的在線幫助; F1 :help
輸入模式:
----方向鍵 進行上下左右方向的光標移動
----Home 快速定位光標到行首
----End 快速定位光標到行尾
----PageUp 進行文本的向上翻頁
----PageDown 進行文本的向下翻頁
----Backspace 刪除光標左側的字符
----Del 刪除光標位置的字符
末行模式:
----/ 從上而下搜索
----? 從下而上搜索
----:s 替換 :s/old/new :#,#s/old/new :%s/old/new /g /c
----:e :r :w :q
----同時打開多個文件並切換
:args 顯示多文件信息
:next 向後切換文件
:prev 向前切換文件
:first 定位首文件
:last 定位尾文件
Ctrl + ^ 快速切換到編輯器中切換前的文件
1.4. 使用 VI 編輯器熟練的操做文本文件、配置文件、腳本文件等;配置徹底末稍區域
2. 具體操做
2.1.1. 末行模式操做
打開新文件
打開新的文件到vi編輯器中
:e filename
打開新的文件到vi編輯器中,並放棄對當前文件的修改
:e! filename
讀取文件內容到當前vi編輯器中
:r filename
保存文件
保存對vi編輯器中已打開文件的修改
:w
另存爲文件
將vi編輯器中的內容另存爲指定文件名
:w myfile
未修改退出
沒有對vi編輯器中打開的文件進行修改,或已對修改進行了保存,直接退出vi編輯器
:q
保存並退出
對vi編輯器中的文件進行保存並退出vi編輯器
:qw
不保存退出
放棄對文件內容的修改,並退出vi編輯器
:q!
在編輯器中顯示行號 :set nu
在編輯器中不顯示行號 :set nonu
查找
從上而下在文件中查找字符串word
/word
從下而上在文件中查找字符串word
?word
定位下一個匹配的被查找字符串 n
定位上一個匹配的被查找字符串 N
替換操做
將當前行中查找到的第一個字符「old」 串替換爲「new」
:s/old/new
將當前行中查找到的全部字符串「old」 替換爲「new」
:s/old/new/g
在行號「#,#」範圍內替換全部的字符串「old」爲「new」
:#,#s/old/new/g
在整個文件範圍內替換全部的字符串「old」爲「new」
:%s/old/new/g
在替換命令末尾加入c命令,將對每一個替換動做提示用戶進行確認
:s/old/new/c
多文件操做
顯示多文件信息 :args
向後切換文件 :next
向前切換文件 :prev
定位首文件 :first
定位尾文件 :last
快速切換到編輯器中切換前的文件 Ctrl + ^
2.2. 命令模式操做
直接進入編輯環境 $ vi
進入編輯環境並打開(新建)文件 $ vi myfile
退出vi編輯環境 :q
光標的移動與翻頁
操做類型 光標操做鍵 功能
光標移動 h 向左移動光標
l 向右移動光標
k 向上移動光標
j 向下移動光標
翻頁 Ctrl + f 向前翻整頁
Ctrl + b 向後翻整頁
Ctrl + u 向前翻半頁
Ctrl + d 向後翻半頁
行內快速跳轉
操做鍵 功能
^ 將光標快速跳轉到本行的行首字符
$ 將光標快速跳轉到本行的行尾字符
w 將光標快速跳轉到當前光標所在位置的後一個單詞的首字母
b 將光標快速跳轉到當前光標所在位置的前一個單詞的首字母
e 將光標快速跳轉到當前光標所在位置的後一個單詞的尾字母
進入輸入模式
命令 功能
i 在當前光標處進入插入狀態
a 在當前光標後進入插入狀態
A 將光標移動到當前行的行末,並進入插入狀態
o 在當前行的下面插入新行,光標移動到新行的行首,進入插入狀態
O 在當前行的上面插入新行,光標移動到新行的行首,進入插入狀態
cw 刪除當前光標到所在單詞尾部的字符,並進入插入狀態
c$ 刪除當前光標到行尾的字符,並進入插入狀態
c^ 命令刪除當前光標以前(不包括光標上的字符)到行首的字符,並進入插入狀態
刪除操做
命令 功能
x 刪除光標處的單個字符
dd 刪除光標所在行
dw 刪除當前字符到單詞尾(包括空格)的全部字符
de 刪除當前字符到單詞尾(不包括單詞尾部的空格)的全部字符
d$ 刪除當前字符到行尾的全部字符
d^ 刪除當前字符到行首的全部字符
J 刪除光標所在行行尾的換行符,至關於合併當前行和下一行的 內容
撤銷操做
命令 功能
u 取消最近一次的操做,並恢復操做結果
能夠屢次使用u命令恢復已進行的多步操做
U 取消對當前行進行的全部操做
Ctrl + r 對使用u命令撤銷的操做進行恢復
複製與粘貼操做
命令 功能
yy 複製當前行整行的內容到vi緩衝區
yw 複製當前光標到單詞尾字符的內容到vi緩衝區
y$ 複製當前光標到行尾的內容到vi緩衝區
y^ 複製當前光標到行首的內容到vi緩衝區
p 讀取vi緩衝區中的內容,並粘貼到光標當前的位置(不覆蓋文 件已有的內容)
2.3. 輸入模式操做
輸入模式的操做
按鍵 功能
方向鍵 進行上下左右方向的光標移動
Home 快速定位光標到行首
End 快速定位光標到行尾
PageUp 進行文本的向上翻頁
PageDown 進行文本的向下翻頁
Backspace 刪除光標左側的字符
Del 刪除光標位置的字符
2.4. 在線幫助
使用vi在線幫助需安裝的軟件包
vim-common-6.3.035-3.i386.rpm
vim-enhanced-6.3.035-3.i386.rpm
軟件包在RHEL4的第2張安裝光盤
使用vi在線幫助的兩種方法
在vi編輯器中按「F1」鍵
輸入help末行命令
3. 關鍵點
本章關鍵點爲 VI 編輯器的三種常見模式的切換與識別; 命令模式、插入模式和末行模式;