a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 系統 > Unix > 正文

linux/unix vi 編輯器用法詳解

2020-06-13 12:40:15
字體:
來源:轉載
供稿:網友

vi命令是unix下常用而重要命令,可在全屏幕方式下編輯一個或多個文件。若在vi執行時沒有指定一個文件,那么vi命令會自動產生一個無名的空的工作文件。若指定的文件不存在,那么就按指定的文件名創建一個新的文件。若對文件的修改不保存的話,v i命令并不改變原來文件的內容。

注意:vi命令并不鎖住所編輯的文件,因此多個用戶可能在同時編輯一個文件,那么最后保存的文件版本將被保留。

下面是vi命令使用的一些選項及含義:

-c sub-command 在對指定的文件編輯前,先執行指定的命令 sub-command .

-r filename 恢復指定的文件filename .

-R 將指定的文件以只讀的方式放入編輯器中,這樣不會保存對文件的任何修 改。

-y number 將編輯窗口的大小設為number行。

下面是vi編輯所處的三種模式:

.命令模式 進入vi時所處的模式。在此模式下用戶可輸入各種子命令對進行*作,如刪除行、粘貼行、移向下一個字、移向不同行等。

.文本輸入模式 在此模式下可以修改一行的內容并增添新行。在命令模式下鍵入a 、i 或c鍵可進入文本輸入模式,按Escape鍵可返回命令模式。

.命令項模式 在此模式下,可以通過子命令輸入更多的參數。如:w子命令要求輸入一文件名,“/”子命令要求輸入一個查找項。用戶使用Escape鍵返回命令模式。

下面是自命令模式下執行的,在同一行上移動的自命令:

h 將光標左移一格。

l 將光標右移一格。

j 將光標下移一格。

k 將光標上移一格。

w 將光標移到下一個小字的前面。

W 將光標移到下一個大字的前面。

b 將光標移到前一個小字的前面。

B 將光標移到前一個大字的前面。

e 將光標移到下一個小字的后面。

E 將光標移到前一個大字的后面。

fc 把光標移到同一行的下一個c字符處。

Fc 把光標移到同一行的前一個c字符處。

tc 把光標移到同一行的下一個字符c的前一格。

Tc 把光標移到同一行的前一個字符c的后一格。

number| 把光標移到遞number列上。

下面是命令模式下在行間移動的子命令:

+或Enter 把光標移至下一行第一個非空白字符。

- 把光標移至上一行第一個非空白字符。

0 把光標移到當前行的第一個字符處。

$ 把光標移到當前行的最后一個字符處。

H 把光標移到屏幕最頂端一行。

L 把光標移到屏幕最底端一行。

M 把光標移到屏幕中間。

下面是命令模式下改變屏幕顯示的子命令:

z- 把當前行作為屏幕的最后一行,并重新顯示屏幕。

z. 把當前行作為屏幕的中間一行,并重新顯示屏幕。

Ctrl+l 重新顯示屏幕當前內容。

/pattern/z- 尋找pattern的下一個位置,并把所在行設為屏幕的最后一行。

下面是在命令模式下用來顯示頁面的子命令:

Ctrl + f向后滾一頁。

Ctrl + d向后滾半頁。

Ctrl + b向前滾一頁。

Ctrl + u向前滾半頁。

Ctrl + e屏幕向下滾一行。

Ctrl + y屏幕項上滾一行。

下面是在命令模式下用來查找字符串所使用的子命令:

/pattern 向后尋找指定的pattern ,若遇到文件尾,則從頭再開始。

?pattern 向前尋找指定的pattern ,若遇到文件頭,則從尾再開始。

n 在上次指定的方向上,再次執行上次定義的查找。

N 在上次指定的方向的相反方向上,再次執行上次定義的查找。

/pattern/+number 將光標停在包含pattern的行后面第number行上。

/pattern/-number 將光標停在包含pattern的行前面第number行上。

% 移到匹配的“()”或“{}”上。

下面是在文本輸入模式下用來輸入文本的子命令(用戶可在任何時候按Escape返回到命令模式):

a 在光標之后開始輸入文本。

A在行尾開始輸入文本。

i在光標之前開始輸入文本。

I在行首第一個非空白字符前輸入文本。

o在光標所在行后插入一空行。

O在光標所在行前插入一空行。

下面是在命令模式下改變文本所使用的子命令(用戶可在任何的時候按Escape鍵返回到命令模式):

cc或S 修改一整行。

C 改變一行光標位置以后的部分。

cw 改變光標所在單詞。

dd刪除當前行。

D 刪除光標所在行光標后面的內容。

dw刪除光標所在的單詞。

J 把下一行內容加到本行行尾。

rc把光符所在字符替換成c .

R 覆蓋本行內容。

u恢復上一次的修改。

x刪除光標所在的字符。

~ 改變光標所在出字符的大小寫。

. 重復上一個*作。

<<把當前行移到左邊。

>>把當前行移到右邊。

下面是用于文件中拷貝文本的字命令:

p 將緩沖區內容取到光標所在行的下面一行。

P 將緩沖區內容取到光標所在行的上面一行。

“bd 將文本刪除至有名緩沖區b .

“bp 張貼有名緩沖區b中內容。

yy把當前行放入緩沖區。

Y 把當前行放入緩沖區。

Yw把光標所在的單詞放入緩沖區。

:g//d, 刪除匹配的所有行

下面是用于保存文件的子命令:

:w 回寫修改后的文件。

:w filename 當filename不存在時,把修改后的文件存為文件filename ,當文件filename存在時,報錯。

!w filename 如果文件filename存在時,把修改后的文件保存為文件filename .

下面列出了在vi編輯的多個文件之間切換所用的子命令:

:n開始編輯vi激活的文件列表中的下一個文件。

:n filenames 指定將被編輯的新的文件列表。

下面列出了用于在當前文件和另外一個文件間切換的子命令:

:e filename 使用filename激活vi (在vi中裝入另一個文件filename)。

e!重新裝入當前文件,若當前文件有改動,則丟棄以前的改動。

:e+filename 使用filename激活vi ,并從文件尾部開始編輯。

:e+number filename 使用filename激活vi ,并在第number行開始編輯。

:e# 開始編輯另外一個文件。

下面是在本文件中加入其他文件代碼所使用的子命令:

:r filename讀取filename文件,并將其內容加到當前文件后。

:r ! command執行command文件,并將其輸出加到當前文件后。

下面是vi中其他的子命令:

ctrl+g 取得正在編輯文件的有關信息。

:sh啟動sh ,從sh中返回可用exit或ctrl+d .

:! Command 執行命令command .

!!重新執行上次的:! Command子命令。

:q退出vi ,若用戶對編輯的文件有所修改,系統不會讓用戶使用q命令退出。

:q!退出vi而不管是否對文件有改動。

ZZ或:wq 保存對文件的修改并退出vi .

用戶可在一個特殊的文件.exrc中定義特殊的vi命令。在vi中使用這些命令時,必須在該命令前加上一個冒號( :)


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日韩精品一区二区三区在线观看 | 在线免费观看黄色小视频 | 欧美亚洲国产一区二区三区 | 天天干天天添 | 成年人网站在线免费观看 | 国产精品中文字幕在线播放 | 97国产在线 | 视频一区二区三区中文字幕 | 国产成人精品二区 | 日本免费黄色 | 成人精品 | 99精品一区二区三区 | 国产精品久久久久久久久久妞妞 | 一级黄色在线 | 男女靠逼小视频 | 日韩精品一区二区三区第95 | 亚洲国产欧美在线 | 久久久免费视频播放 | 久久精品1区2区 | 99精品热视频 | 成人a视频 | 欧美精品三区 | 国产乱精品一区二区三区 | 日韩欧美成人影院 | 免费视频二区 | 国产剧情一区二区三区 | 国产精品中文字幕在线播放 | 成人免费视频观看视频 | 中文字幕日韩在线视频 | 国产网站在线 | 欧美成人一区二免费视频软件 | 成人不卡视频 | 欧美日韩国产精品久久久久 | 欧美日韩精品在线一区 | 国产不卡一区二区三区在线观看 | 2021最新热播中文字幕-第1页-看片视频 亚洲第一男人天堂 | 欧美日韩一区二区三区 | 久久久久久av | 最新黄色网页 | 男女网站视频 | 久热精品在线 |