當前位置:首頁 » 操作系統 » linuxvi

linuxvi

發布時間: 2022-02-08 07:39:12

linux vi保存退出命令 (如何退出vi)

Linux下vi命令編輯器怎樣編輯及保存退出方法如下:

1、如圖,vi 文件名,接著按回車即可打開對應的文件,如果沒有對應的文件,那麼vi命令就會自動創建一個新的。

Ⅱ linux 下的vi 主要作用是什麼

Vi是Unix及Linux系統下標準的編輯器,由美國加州大學伯克利分校的Bill Joy所創立。

基本上vi可以分為三種狀態,分別是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode)。

各模式的功能區分如下:

1、命令模式(command mode)

控制屏幕游標的移動,字元、字或行的刪除,移動復制某區段及進入插入模式、底行模式下。

2、插入模式(Insert mode)

只有在插入模式下,才可以做文字輸入,按ESC鍵可回到命令模式。

3、底行模式(last line mode)

將文件保存或退出vi,也可以設置編輯環境,如尋找字元串、列出行號。

不過一般我們在使用時把vi簡化成兩個模式,就是將底行模式也算入命令模式。

(2)linuxvi擴展閱讀

在文本編輯器出現前,人們用打孔機把計算機文字打到穿孔卡片上。文字存放於一個裝著這樣的薄卡片的盒子里,可以用讀卡器來閱讀。

第一個文本編輯器是一種行編輯器,它運行在打字機型的終端上,這種編輯器並不具備在窗口和屏幕中顯示的功能。它包含了一些非常短的命令(為了減少打字量)。其中一個命令能夠把文件的指定部分通過打字機列印出來。

編輯游標是想像中的一個插入點,通過特殊命令,可以把它移動到特定內容字元串所在的行。隨後,內容字元串又被擴展成正則表達式。

如果想看到文件的變化,你需要把它列印出來。相對於穿孔機來說,人們認為這種基於行的文本編輯器具有革命性的進步。如果沒有它,用戶就需要把那些處理文本的命令打成專用的卡片,並在編輯文件時使用這些卡片。

當帶有顯示屏的計算機終端出現後,基於顯示屏的文本編輯器開始流行起來。最早的全屏編輯器中,有一種叫做O26,它是於1967年為CDC 6000系列機器的操作控制台而作的。

另外一個早期的全屏編輯器是vi。vi誕生於20世紀70年代。至今,它仍然內置於Unix和Linux系統中,不過vi也有一個改善的版本Vim也十分為人所知。全屏編輯器對視頻終端的銷售起到了促進的作用。



Ⅲ Linux vi 操作命令

進入vi的命令
vi filename :打開或新建文件,並將游標置於第一行首
vi +n filename :打開文件,並將游標置於第n行首
vi + filename :打開文件,並將游標置於最後一行首
vi +/pattern filename:打開文件,並將游標置於第一個和pattern匹配的串處
vi -r filename :在上次正用vi編輯時發生系統崩潰,恢復filename
vi filename....filename :打開多個文件,依次進行編輯
移動游標類命令
h :游標左移一個字元
l :游標右移一個字元
space:游標右移一個字元
Backspace:游標左移一個字元
k或Ctrl+p:游標上移一行
j或Ctrl+n :游標下移一行
Enter :游標下移一行
w或W :游標右移一個字至字首
b或B :游標左移一個字至字首
e或E :游標右移一個字至字尾
) :游標移至句尾
( :游標移至句首
}:游標移至段落開頭
{:游標移至段落結尾
nG:游標移至第n行首
n+:游標下移n行
n-:游標上移n行
n$:游標移至第n行尾
H :游標移至屏幕頂行
M :游標移至屏幕中間行
L :游標移至屏幕最後行
0:(注意是數字零)游標移至當前行首
$:游標移至當前行尾
屏幕翻滾類命令
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏
nz:將第n行滾至屏幕頂部,不指定n時將當前行滾至屏幕頂部。
插入文本類命令
i :在游標前
I :在當前行首
a:游標後
A:在當前行尾
o:在當前行之下新開一行
O:在當前行之上新開一行
r:替換當前字元
R:替換當前字元及其後的字元,直至按ESC鍵
s:從當前游標位置處開始,以輸入的文本替代指定數目的字元
S:刪除指定數目的行,並以所輸入文本代替之
ncw或nCW:修改指定數目的字
nCC:修改指定數目的行
刪除命令
ndw或ndW:刪除游標處開始及其後的n-1個字
do:刪至行首
d$:刪至行尾
ndd:刪除當前行及其後n-1行
x或X:刪除一個字元,x刪除游標後的,而X刪除游標前的
Ctrl+u:刪除輸入方式下所輸入的文本
搜索及替換命令
/pattern:從游標開始處向文件尾搜索pattern
?pattern:從游標開始處向文件首搜索pattern
n:在同一方向重復上一次搜索命令
N:在反方向上重復上一次搜索命令
:s/p1/p2/g:將當前行中所有p1均用p2替代
:n1,n2s/p1/p2/g:將第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g:將文件中所有p1均用p2替換
選項設置
all:列出所有選項設置情況
term:設置終端類型
ignorance:在搜索中忽略大小寫
list:顯示製表位(Ctrl+I)和行尾標志($)
number:顯示行號
report:顯示由面向行的命令修改過的數目
terse:顯示簡短的警告信息
warn:在轉到別的文件時若沒保存當前文件則顯示NO write信息
nomagic:允許在搜索模式中,使用前面不帶「」的特別字元
nowrapscan:禁止vi在搜索到達文件兩端時,又從另一端開始
mesg:允許vi顯示其他用戶用write寫到自己終端上的信息
最後行方式命令
:n1,n2 co n3:將n1行到n2行之間的內容拷貝到第n3行下
:n1,n2 m n3:將n1行到n2行之間的內容移至到第n3行下
:n1,n2 d :將n1行到n2行之間的內容刪除
:w :保存當前文件
:e filename:打開文件filename進行編輯
:x:保存當前文件並退出
:q:退出vi
:q!:不保存文件並退出vi
:!command:執行shell命令command
:n1,n2 w!command:將文件中n1行至n2行的內容作為command的輸入並執行之,若不指定n1,n2,則表示將整個文件內容作為command的輸入
:r!command:將命令command的輸出結果放到當前行
寄存器操作
"?nyy:將當前行及其下n行的內容保存到寄存器?中,其中?為一個字母,n為一個數字
"?nyw:將當前行及其下n個字保存到寄存器?中,其中?為一個字母,n為一個數字
"?nyl:將當前行及其下n個字元保存到寄存器?中,其中?為一個字母,n為一個數字
"?p:取出寄存器?中的內容並將其放到游標位置處。這里?能是個字母,也能是個數字
ndd:將當前行及其下共n行文本刪除,並將所刪內容放到1號刪除寄存器中。
進入vi
vi test
離開vi
:q! 離開vi,並放棄剛在緩沖區內編輯的內容。
:wq 將緩沖區內的資料寫入磁碟中,並離開vi。
:ZZ 同wq
同wq
:w 將緩沖區內的資料寫入磁碟中,但並不離開vi。
:q 離開vi,若文件被修改過,則會被需求確認是否放棄修改的內容,此指令可和: w 配合使用。
Vi 的操作模式
Vi 提供兩種操作模式:
輸入模式(insert mode)
指令模式(command mode)
當使用者進入vi後,既處於指令模式下,此刻鍵入所有字元皆被視為指令。
輸入模式:a(append) 游標之後加入資料。
A 該行之末加入資料
i (insert) 游標之前加入資料
I 該行之首加入資料
o (open) 新增一行和該行之下供輸入資料
O 新增一行和該行之上供輸入資料
指令模式:B 移至該行第一個字元,若游標在該行第一字元則游標移至上一行第一字元。
b 由游標所在位置之前一個字串的第一個字元
cc 刪除整行,修改整行的內容。
D 以行為單位,刪除游標在內後面的所有字元。
db 刪除該行游標前字元
dd 刪除該行
de 刪除自游標開始後面的字元
d加字元刪除游標所在位置至字元之間的單
E移至該行最後字元,若游標在該行最後字元則游標移至下一行最後字元
e由游標所在位置至該字串的最後一個字元
G 移至該檔案的最後一行
h 向前移一個字元
j 向下移一個字元
k 向上移一個字元
0 移至該行之首
M 移至視窗的中間那行
L 移至視窗的最後一行
l 向後移一個字元
0 由游標所在位置該行的第一個字元
nG 移至該檔案的第n行
n+ 自游標所在位置向後移n行至該行的第一字元
n- 自游標所在位置向前移n行至該行的第一字元
R 進入取代狀態,直到《ESC》為止
s 刪除游標所在字元,並進入取代模式直到《ESC》
S 刪除游標所在之該行資料,並進入輸入模式直到《ESC》
w 由游標所在位置之下一個字串的第一個字元
x 刪除游標所在該字元。
X 刪除游標所在之前一字元。
r 用接於此指令之後的字元取代(replace)游標所在字元
yy yank整行,使游標所在該行復制到記憶體緩沖區
顯示該行之行號、檔案名稱、檔案中最末之行號、游標所在行號占
總行號之百分比
$ 由游標所在位置至該行的最後一個字元。
) 由游標所在位置至下一個句子的第一個字元。
( 由游標所在位置至該句子的第一個字元。
{ 由游標所在位置至該段落的最後一個字元。
} 由游標所在位置至該段落的第一個字元
yank和delete可將指定的資料復制到記憶體緩沖區,而藉有put指令可將緩沖區內的資料復制到熒幕上
例如:搬移一行 :在該行執行dd
游標移至目的地
執行p
復制一行 :在該行執行yy
游標移至目的地
執行p
視窗移動:
視窗往下卷一頁
視窗往上卷一頁
視窗往下卷半頁
視窗往上卷半頁
視窗往下卷一行
視窗往上卷一行
刪除、復制及修改指令介紹:
d(delete)、c(change)和y(yank)這一類的指令在vi 中的指令格式為:
operation+scope=command
(運運算元)(范圍)
運運算元:
d 刪除指令。刪除資料,但會將刪除資料復制到記憶體緩沖區。
y 將資料(字組、行列、句子或段落)復制到緩沖區。
p 放置(put)指令,和d和y配合使用。可將最後delete或yank的資料放置於游標所在位置之行列下。
c 修改(change)指令,類似delete於insert的組合。刪除一個字組、句子等資料,並插入新鍵入的

Ⅳ linux的vi命令怎麼進去

linux編輯文件時,雖然使用vi 文件名可以查看文件,但是無法修改文件,原因如下:
1、vi 文件名 後,進入文件但是一般模式,無法修改文件。
2、按鍵 i 進入修改模式,此模式下可以修改文件。
3、修改完後,按ESC,進入命令模式,此時用:wq 保存退出 或用:q!不保存退出

Ⅳ linux的vi命令編輯後wq與x的區別是什麼

linux的vi命令編輯後wq與x的區別只有一個。

這兩者一般情況下沒度什麼不一樣,但是在編程方面,對編輯源文件可能會產生重要影響。因為文件即使沒有修改,":wq"強制更新文件的修改時間,這樣回會讓make編譯整個項目時以為文件被修改過了,然後就得答重新編譯鏈接生成可執行文件。

這可能會產生讓人誤解的後果,當然也產生了不必要的系統資源花銷。

:wq 強制性寫入文件並退出百。即使文件沒有被修改也強制寫入,並更新文件的修改時間。

:x 寫入文件並退出。僅當文件被修改時才寫入,並更新文件修改時間,否則不會更新文件修改時間。

(5)linuxvi擴展閱讀

vi命令詳解:

基本上vi可以分為三種狀態,分別是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能區分如下:

1) 命令行模式command mode)

控制屏幕游標的移動,字元、字或行的刪除,移動復制某區段及進入Insert mode下,或者到 last line mode。

2) 插入模式(Insert mode)

只有在Insert mode下,才可以做文字輸入,按「ESC」鍵可回到命令行模式。

3) 底行模式(last line mode)

將文件保存或退出vi,也可以設置編輯環境,如尋找字元串、列出行號……等。

不過一般在使用時把vi簡化成兩個模式,就是將底行模式(last line mode)也算入命令行模式command mode)。

Ⅵ Linux下 vi 和 vim 有什麼區別

vim是vi的增強版,完全兼容vi。vim優勢主要體現在以下幾個方面:
1、多級撤消
我們知道在vi里,按u只能撤消上次命令,而在vim里可以無限制的撤消。
2、易用性
vi只能運行於unix類中,而vim不僅可以運行於unix,windows ,mac等多操作平台。
3、語法加亮
vim可以用不同的顏色來加亮你的代碼。
4、可視化操作
就是說vim不僅可以在終端運行,也可以運行於x window、 mac os、 windows。
5、對vi的完全兼容
某些情況下,你可以把vim當成vi來使用。

Ⅶ linux vi命令的使用方法

一般模式常用操作

【h(或向左方向鍵)】 游標左移一個字元

【j(或向下方向鍵)】 游標下移一個字元

【k(或向上方向鍵)】 游標上移一個字元

【l(或向右方向鍵)】 游標右移一個字元

【[Ctrl] + f】 屏幕向下移動一頁(相當於Page Down鍵)

【[Ctrl] + b】 屏幕向上移動一頁(相當於Page Up鍵)

【[0]或[Home]】 游標移動到當前行的最前面

【[$]或[End]】 游標移動到當前行的末尾

【G】 游標移動到文件的最後一行(第一個字元處)

【nG】 n為數字(下同),移動到當前文件中第n行

【gg】 移動到文件的第一行,相當於"1G"

【n[Enter]】 游標向下移動n行

Ⅷ linux vi

進入vi的命令
vi filename :打開或新建文件,並將游標置於第一行首
vi +n filename :打開文件,並將游標置於第n行首
vi + filename :打開文件,並將游標置於最後一行首
vi +/pattern filename:打開文件,並將游標置於第一個與pattern匹配的串處
vi -r filename :在上次正用vi編輯時發生系統崩潰,恢復filename
vi filename....filename :打開多個文件,依次進行編輯

移動游標類命令[/b]
h :游標左移一個字元
l :游標右移一個字元
space:游標右移一個字元
Backspace:游標左移一個字元
k或Ctrl+p:游標上移一行
j或Ctrl+n :游標下移一行
Enter :游標下移一行
w或W :游標右移一個字至字首
b或B :游標左移一個字至字首
e或E :游標右移一個字至字尾
) :游標移至句尾
( :游標移至句首
}:游標移至段落開頭
{:游標移至段落結尾
nG:游標移至第n行首
n+:游標下移n行
n-:游標上移n行
n$:游標移至第n行尾
H :游標移至屏幕頂行
M :游標移至屏幕中間行
L :游標移至屏幕最後行
0:(注意是數字零)游標移至當前行首
$:游標移至當前行尾

屏幕翻滾類命令
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏
nz:將第n行滾至屏幕頂部,不指定n時將當前行滾至屏幕頂部。
插入文本類命令
i :在游標前
I :在當前行首
a:游標後
A:在當前行尾
o:在當前行之下新開一行
O:在當前行之上新開一行
r:替換當前字元
R:替換當前字元及其後的字元,直至按ESC鍵
s:從當前游標位置處開始,以輸入的文本替代指定數目的字
S:刪除指定數目的行,並以所輸入文本代替之
ncw或nCW:修改指定數目的字
nCC:修改指定數目的行

刪除命令
ndw或ndW:刪除游標處開始及其後的n-1個字
do:刪至行首
d$:刪至行尾
ndd:刪除當前行及其後n-1行
x或X:刪除一個字元,x刪除游標後的,而X刪除游標前的
Ctrl+u:刪除輸入方式下所輸入的文本

搜索及替換命令
/pattern:從游標開始處向文件尾搜索pattern
?pattern:從游標開始處向文件首搜索pattern
n:在同一方向重復上一次搜索命令
N:在反方向上重復上一次搜索命令
最後行方式命令
:n1,n2 co n3:將n1行到n2行之間的內容拷貝到第n3行下
:n1,n2 m n3:將n1行到n2行之間的內容移至到第n3行下
:n1,n2 d :將n1行到n2行之間的內容刪除
:w :保存當前文件
:e filename:打開文件filename進行編輯
:x:保存當前文件並退出
:q:退出vi
:q!:不保存文件並退出vi
:!command:執行shell命令command
ndd:將當前行及其下共n行文本刪除,並將所刪內容放到1號刪除寄存器中。

Ⅸ linux中在vi編輯器加#是什麼意思

直接在終端中輸入
vi
#
會有一個精簡的VI說明
vi編輯器打開後
#代表的是注釋
比如
#
文件創建於2012-03-31
~
~
~
~

熱點內容
解壓到當前文件夾右鍵 發布:2024-04-26 03:57:08 瀏覽:979
html5android教程視頻下載 發布:2024-04-26 03:09:59 瀏覽:867
伺服器的描述是什麼 發布:2024-04-26 03:08:32 瀏覽:394
個人加密 發布:2024-04-26 03:01:23 瀏覽:521
linuxusbgadget 發布:2024-04-26 02:52:54 瀏覽:304
我的世界空島世界伺服器地址 發布:2024-04-26 01:39:08 瀏覽:248
尼爾機械紀元加密 發布:2024-04-26 01:37:11 瀏覽:868
在控制台輸出sql語句 發布:2024-04-26 01:08:12 瀏覽:432
動畫java 發布:2024-04-26 01:02:40 瀏覽:12
得力文件夾5302 發布:2024-04-26 00:21:32 瀏覽:91