導航:首頁 > 程序命令 > vi常用的命令

vi常用的命令

發布時間:2023-01-31 11:49:57

1. Vi命令的命令大全

本編輯器是所有計算機系統中最常用的一種工具。UNIX下的編輯器有ex,sed和vi等,其中,使用最為廣泛的是vi,而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個字
d0:刪至行首
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號刪除寄存器中。
tags 用法
在函數中移動游標
[{ 轉到上一個位於第一列的{
}] 轉到下一個位於第一列的{
{ 轉到上一個空行
} 轉到下一個空行 ([ and ] 也分別是兩個指令)
ctrl+t 跳回
gd 轉到當前游標所指的局部變數的定義
* 轉到當前游標所指的單詞下一次出現的地方
# 轉到當前游標所指的單詞上一次出現的地方
Vim 的創造者是一名計算機程序員,因此這就不奇怪 Vim 中有許多幫助編寫程序的功能:
跳轉到標識符被定義和使用的地方;在另一個窗口中預覽有關的聲明等等。

2. vi的用法

vi 命令 是UNIX操作系統和類UNIX操作系統中最通用的全屏幕純文本編輯器。

vi編輯器支持編輯模式和命令模式,編輯模式下可以完成文本的編輯功能,命令模式下可以完成對文件的操作命令,要正確使用vi編輯器就必須熟練掌握著兩種模式的切換。默認情況下,打開vi編輯器後自動進入命令模式。從編輯模式切換到命令模式使用「esc」鍵,從命令模式切換到編輯模式使用"A"、"a"、"O"、"o"、"I"、"i"鍵。

vi編輯器的三種工作方式之間的轉換如圖所示。

vi編輯器提供了豐富的內置命令,有些內置命令使用鍵盤組合鍵即可完成,有些內置命令則需要以冒號「:」開頭輸入。常用內置命令如下:

vi(選項)(參數)

知識擴展

vi編輯器有三種工作方式:命令方式、輸入方式和ex轉義方式。通過相應的命令或操作,在這三種工作方式之間可以進行轉換。

命令方式

在Shell提示符後輸入命令vi,進入vi編輯器,並處於vi的命令方式。此時,從鍵盤上輸入的任何字元都被作為編輯命令來解釋,例如,a(append)表示附加命令,i(insert)表示插入命令,x表示刪除字元命令等。如果輸入的字元不是vi的合法命令,則機器發出「報警聲」,游標不移動。另外,在命令方式下輸入的字元(即vi命令)並不在屏幕上顯示出來,例如,輸入i,屏幕上並無變化,但通過執行i命令,編輯器的工作方式卻發生變化:由命令方式變為輸入方式。

輸入方式

通過輸入vi的插入命令(i)、附加命令(a)、打開命令(o)、替換命令(s)、修改命令(c)或取代命令(r)可以從命令方式進入輸入方式。在輸入方式下,從鍵盤上輸入的所有字元都被插入到正在編輯的緩沖區中,被當做該文件的正文。進入輸入方式後,輸入的可見字元都在屏幕上顯示出來,而編輯命令不再起作用,僅作為普通字母出現。例如,在命令方式下輸入字母i,進到輸入方式,然後再輸入i,就在屏幕上相應游標處添加一個字母i。

由輸入方式回到命令方式的辦法是按下Esc鍵。如果已在命令方式下,那麼按下Esc鍵就會發出「嘟嘟」聲。為了確保用戶想執行的vi命令是在命令方式下輸入的,不妨多按幾下Esc鍵,聽到嘟聲後再輸入命令。

ex 轉義方式

vi和ex編輯器的功能是相同的,二者的主要區別是用戶界面。在vi中,命令通常是單個字母,如a,x,r等。而在ex中,命令是以Enter;鍵結束的命令行。vi有一個專門的「轉義」命令,可訪問很多面向行的ex命令。為使用ex轉義方式,可輸入一個冒號(:)。作為ex命令提示符,冒號出現在狀態行(通常在屏幕最下一行)。按下中斷鍵(通常是Del鍵),可終止正在執行的命令。多數文件管理命令都是在ex轉義方式下執行的(例如,讀取文件,把編輯緩沖區的內容寫到文件中等)。轉義命令執行後,自動回到命令方式。例如:

則從文件第一行至文件末尾($)將大寫I全部替換成小寫i

3. linux用VI編輯後保存退出命令是什麼啊

先按ESC進入Command模式,然後輸入「:wq」,回車就可以保存並退出了。

vi的其他保存/退出命令:

:w 保存;

:w filename 另存為filename;

:wq! 保存並強制退出;

:wq! filename 註:以filename為文件名保存後強制退出;

:q! 強制退出;

:x 保存並退出(僅當文件有變化時保存)

(3)vi常用的命令擴展閱讀:

vi有三種工作模式:命令模式、文本編輯模式和最後行模式。不同工作模式下的操作方法有所不同。

1、命令行模式

該模式是進入vi編輯器後的默認模式。任何時候,不管用戶處於何種模式,按下Esc鍵即可進入命令模式。

在命令模式下,用戶可以輸入vi命令,用於管理自己的文檔。此時從鍵盤上輸入的任何字元都被當做編輯命令來解釋。若輸入的字元是合法的vi命令,則vi在接受用戶命令之後完成相應的動作。但需注意的是,所輸入的命令並不回顯在屏幕上。若輸入的字元不是vi的合法命令,vi 會響鈴報警。

2、文本輸入模式

在命令模式下輸入插入命令i、附加命令a、打開命令o、修改命令c、取代命令r或替換命令s都可以進入文本輸入模式。

在該模式下,用戶輸入的任何字元都被vi當做文件內容保存起來,並將其顯示在屏幕上。在文本輸入過程中,若想回到命令模式下,按下Esc鍵即可。

3、末行模式

末行模式也稱 ex 轉義模式。在命令模式下,用戶按:鍵即可進入末行模式下,此時vi會在顯示窗口的最後一行(通常也是屏幕的最後一行)顯示一個:作為末行模式的說明符,等待用戶輸入命令。多數文件管理命令都是在此模式下執行的(如把編輯緩沖區的內容寫到文件中等)。

末行命令執行完後,vi 自動回到命令模式。

4. VI命令有那些

一、基本命令介紹

---- 1.游標命令

k、j、h、l——上、下、左、右游標移動命令。雖然您可以在Linux中使用鍵盤右邊的4個游標鍵,但是記住這4個命令還是非常有用的。這4個鍵正是右手在鍵盤上放置的基本位置。
nG——跳轉命令。n為行數,該命令立即使游標跳到指定行。
Ctrl+G——游標所在位置的行數和列數報告。
w、b——使游標向前或向後跳過一個單詞。
---- 2.編輯命令
i、a、r——在游標的前、後以及所在處插入字元命令(i=insert、a=append、r=replace)。
cw、dw——改變(置換)/刪除游標所在處的單詞的命令 (c=change、d=delete)。
x、d$、dd——刪除一個字元、刪除游標所在處到行尾的所有字元以及刪除整行的命令。
---- 3.查找命令
---- /string、?string——從游標所在處向後或向前查找相應的字元串的命令。
---- 4.拷貝復制命令
---- yy、p——拷貝一行到剪貼板或取出剪貼板中內容的命令。

二、常見問題及應用技巧

---- 1.在一個新文件中讀/etc/passwd中的內容,取出用戶名部分。
---- vi file
---- :r /etc/passwd 在打開的文件file中游標所在處讀入/etc/passwd
---- :%s/:.*//g 刪除/etc/passwd中用戶名後面的從冒號開始直到行尾的所有部分。
---- 您也可以在指定的行號後讀入文件內容,例如使用命令「:3r /etc/passwd」從新文件的第3行開始讀入 /etc/passwd的所有內容。
---- 我們還可以使用以下方法刪掉文件中所有的空行及以#開始的注釋行。
---- #cat squid.conf.default | grep -v ^$ | grep -v ^#

---- 2.在打開一個文件編輯後才知道登錄的用戶對該文件沒有寫的許可權,不能存檔,需要將所做修改存入臨時文件。
---- vi file
---- :w /tmp/1 保存所做的所有修改,也可以將其中的某一部分修改保存到臨時文件,例如僅僅把第20~59行之間的內容存檔成文件/tmp/1,我們可以鍵入如下命令。
---- vi file
---- :20,59w /tmp/1

---- 3.用VI編輯一個文件,但需要刪除大段的內容。
---- 首先利用編輯命令「vi file」打開文件,然後將游標移到需要刪除的行處按Ctrl+G顯示行號,再到結尾處再按Ctrl+G,顯示文件結尾的行號。
---- :23,1045d 假定2次得到的行號為23和1045,則把這期間的內容全刪除,也可以在要刪除的開始行和結束行中用ma、mb命令標記,然後利用「:a,bd」命令刪除。

---- 4.在整個文件的各行或某幾行的行首或行尾加一些字元串。
---- vi file
---- :3,$s/^/some string / 在文件的第一行至最後一行的行首插入「some string」。
---- :%s/$/some string/g 在整個文件每一行的行尾添加「some string」。
---- :%s/string1/string2/g 在整個文件中替換「string1」成「string2」。
---- :3,7s/string1/string2/ 僅替換文件中的第3行到第7行中的「string1」成「string2」。
---- 注意: 其中s為substitute,%表示所有行,g表示global。

---- 5.同時編輯2個文件,拷貝一個文件中的文本並粘貼到另一個文件中。
---- vi file1 file2
---- yy 在文件1的游標處拷貝所在行
---- :n 切換到文件2 (n=next)
---- p 在文件2的游標所在處粘貼所拷貝的行
---- :n 切換迴文件1

---- 6.替換文件中的路徑。
---- 使用命令「:%s#/usr/bin#/bin#g」可以把文件中所有路徑/usr/bin換成/bin。也可以使用命令「:%s//usr/bin//bin/g」實現,其中「」是轉義字元,表明其後的「/」字元是具有實際意義的字元,不是分隔符。

5. vi 命令大全

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

w   保存當前文件
w /tmp1   另存為/tmp1
20,59w /tmp1   僅將20-59行之間的內存另存為/tmp1
x 或 wq   保存退出
q   退出vi
q!   退出不保存 >
!command   執行shell命令command
n1,n2 w !command   將文件中n1行至n2行的內容作為command的輸入並執行之,若不指定n1,n2,則表示將整個文件內容作為command的輸入
r !command   將命令command的輸出結果放到當前行
w !sudo tee %   保存沒許可權時,可獲取許可權再保存

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   刪除輸入方式下所輸入的文本
n1,n2 d   將n1行到n2行之間的內容刪除
%d   刪除全部內容
1,$d   刪除全部內容

yy   復制當前行
nyy   復制當前行開始的n行
  先按 v 然後方向鍵選擇區域,按 y 復制選中行
dd   剪切當前行
p (小)   在當前游標處下面粘貼內容
P (大)   在當前游標處上面粘貼內容
n1,n2 co n3   將n1行到n2行之間的內容拷貝到第n3行下
n1,n2 m n3   將n1行到n2行之間的內容移至到第n3行下

/abc   從游標開始處向文件尾搜索abc
?abc   從游標開始處向文件首搜索abc
//abc   從游標開始處向文件尾搜索/abc,其中/是轉義
n   在同一方向重復上一次搜索命令
N   在反方向上重復上一次搜索命令

s/vivian/sky/   替換當前行第一個 vivian 為 sky
s/vivian/sky/g   替換當前行所有 vivian 為 sky
n,$s/vivian/sky/   替換第 n 行開始到最後一行中每一行的第一個 vivian 為 sky
n,$s/vivian/sky/g   替換第 n 行開始到最後一行中每一行所有 vivian 為sky
%s/vivian/sky/g   (等同於 g/vivian/s//sky/) 替換每一行的每一個 vivian 為 sky
s#vivian/#sky#   替換當前行第一個 vivian/ 為 sky/(可以使用 # 或 + 作為分隔符,此時中間出現的 / 不會作為分隔符)
s/p1/p2/g   將當前行中所有p1均用p2替代
n1,n2s/p1/p2/g   將第n1至n2行中所有p1均用p2替代
g/p1/s//p2/g   將文件中所有p1均用p2替換

"?nyy   將當前行及其下n行的內容保存到寄存器?中,其中?為一個字母,n為一個數字
"?nyw   將當前行及其下n個字保存到寄存器?中,其中?為一個字母,n為一個數字
"?nyl   將當前行及其下n個字元保存到寄存器?中,其中?為一個字母,n為一個數字
"?p   取出寄存器?中的內容並將其放到游標位置處。這里?可以是一個字母,也可以是一個數字
ndd   將當前行及其下共n行文本刪除,並將所刪內容放到1號刪除寄存器中

set number   顯示行號
set number!   不顯示行號,其它選項同理加!號
set all   列出所有選項設置情況
set term   設置終端類型
set ignorance   在搜索中忽略大小寫
set list   顯示製表位(Ctrl+I)和行尾標志($)
set report   顯示由面向行的命令修改過的數目
set terse   顯示簡短的警告信息
set warn   在轉到別的文件時若沒保存當前文件則顯示NO write信息
set nomagic   允許在搜索模式中,使用前面不帶「」的特殊字元
set nowrapscan   禁止vi在搜索到達文件兩端時,又從另一端開始
set mesg   允許vi顯示其他用戶用write寫到自己終端上的信息

參考文獻:
https://www.cnblogs.com/mondol/p/vi-examples.html

6. VI和VIM命令的操作

vi編輯器是分為三種狀態的

h 或 向左箭頭鍵(←) 游標向左移動一個字元
j 或 向下箭頭鍵(↓) 游標向下移動一個字元
k 或 向上箭頭鍵(↑) 游標向上移動一個字元
l 或 向右箭頭鍵(→) 游標向右移動一個字元
[Ctrl] + [d] 屏幕『向下』移動半頁
[Ctrl] + [u] 屏幕『向上』移動半頁

0 或功能鍵[Home] 這是數字『 0 』:移動到這一行的最前面字元處 (常用)
$ 或功能鍵[End] 移動到這一行的最後面字元處(常用)

gg 移動到這個檔案的第一行 (常用)
n<Enter> n 為數字。游標向下移動 n 行(常用)

n<space> 那個 n 表示『數字』,游標會向右移動這一行的 n 個字元。
n<Enter> n 為數字。游標向下移動 n 行(常用)

/word 向下尋找某個單詞
?word 向下尋找某個單詞
n 向下重復執行搜索命令
N 向上重復執行搜索命令

dd 刪除游標所在的整列
yy 復制游標所在那行
. 重復上一個動作

主要為一般模式到編輯模式的切換
i,I a,A o,O r,R 都可以實現到編輯模式的切換
其中r,R實現的是取代模式
Esc 為推出編輯模式回到常用模式

:w 編輯的數據寫入硬碟
:w! 如果未見為只讀的時候強制寫入
;q 離開
:q! 不儲存強制離開
:wq 儲存後離開
:wq! 儲存後強制離開
ZZ 若檔案沒有動過則直接離開,若檔案已動過則保存離開
:set nu 設置行號
:set nonu 取消行號

7. VI常用命令有哪些

cp復制cd切換目錄mv移動rm刪除df查看磁碟剩餘空間vivim編輯器還有什麼命令:你看看/bin/sbin/usr/bin這幾個文件夾就知道了。

8. linux中vi常用的命令

[語法]:vi [-wn] [-R] 文件…
[說明]: vi 是一個基於行編輯器 ex 上的全屏幕編輯器,可以在vi 中使用 ex,ed的全部命令,vi選項中 -wn 指將編輯窗口大小置為n行,-R 為將編輯的文件置為只讀模式, vi 工作模式分為命令模式和輸入模式,一般情況下在命令模式下,可敲入vi命令,進入輸入模式下時可以編輯要編輯的文本,命令 a A i I o O c C s S R 可進入輸入模式,在輸入模式下按 ESC 鍵可推出輸入模式,回到命令模式,在命令模式中敲入: 命令,則可進入ex方式,在屏幕底部出現提示符 : ,此時可使用任意ex命令,屏幕底行也用來作/ ? ! 命令的提示行,大多數命令可以在其前面加數字,表示命令執行的重復次數,下面簡單介紹一下vi 的命令集,^ 表示(CTRL)鍵
^B 退回前一頁,前面加數字表示重復次數,每次換頁時
保留上一頁的兩行
^D 在命令模式下,表示下滾屏幕的一半,在輸入模式下,表示回退至
左邊的自動縮進處
^E 顯示屏幕底線之下的一行
^F 前進一頁,前面加數字表示重復次數,每次換頁時
保留上一頁的兩行
^G 顯示當前文件名,當前行號和文件總行數,並用百分號當前行在
整個文件中的位置
^H(退格) 在命令模式下,游標左移一格;在輸入模式下,刪去前面的字元
^I(TAB) 在輸入模式下,產生一串空格
^J(LF) 游標下移一行
^L 刷新屏幕,即將屏幕重新顯示
^M(回車) 在命令模式下,游標移動至下行開頭
在輸入模式下,開辟一新行
^N 游標下移一行
^P 游標上移一行
^Q 在輸入模式下,將其後的非列印字元作為正文插入
^R 刷新屏幕
^U 屏幕上滾一半,前面加數字時表示上滾的行數,此數字對
以後的^D ^U 命令有效
^V 在輸入模式下,將其後的非列印字元作為正文插入
^W 在輸入模式下,使游標回退一個字
^Y 顯示屏幕底線之上的一行
^Z 暫停編輯,退回上層Shell
^[(ESC) 退出輸入模式,回到命令模式
! 暫時退出編輯,執行Shell命令
(雙引號) 用於標志有名緩沖區,編號緩沖區1-9用於保存被刪去的正文,字
母名緩沖區a-z供用戶存放自定義的正文
$ 將游標移動到當前行尾,前加數字則表示前移行數,如2$表示移動
到下一行行尾
% 將游標移動到配對的小括弧()或大括弧{}上去
( 退回句子開頭
) 前移到句子開頭
- 退到上一行第一個非空格字元
. 重復上一次改變緩沖區內容的命令
/ 模式向前搜索模式,將游標移動到模式出現處,模式是一個正規
表達式,(參看 grep)
: 在屏幕底部提示:,其後可使用ex命令
? 功能同 / ,但方向是向前查找
[[ 游標回退至前一節分界處
\ 轉意符
]] 游標前移至節分界處
^(不是CTRL) 游標移至當前行第一個非空字元上
『 連續兩個」表示將游標移至其移動前的位置,』後跟字母表示游標字
母標記的行首(參看 m 命令)
A 在行尾插入正文,進入輸入模式
B 游標回退一個字
C 替換游標後的內容
D 刪除游標後的內容
E 游標前移到字尾
F 字元 在當前行向左查找指定字元
G 游標移動到其前面數字指定的行,若未指定則移動到最後一行
H 游標移動到屏幕頂行,若前面有數字,則移動到屏幕上該數字
指定的行
I 在行開頭插入正文
J 連接兩行,若前面有數字則連接數字指定的行
L 游標移動到屏幕底行,若前面有數字,則移動到屏幕底線往上數該
數字指定的行
M 游標移動到屏幕中線
N 使用模式查找/或?時,重復找下一個匹配的模式,但方向與上次相
反,其功能同 n ,但方向相反
O 在當前行上開辟一新行
P 將上次被刪除的正文插入游標前面,可在其前面加緩沖區編號,編
號1-9用於保存被刪去的正文,字母名緩沖區a-z供用戶存放自定
義的正文
Q 從vi 推出進入ex命令狀態
R 替換字元串
S 替換整行
T 字元 向左查找字元
U 將當前行恢復至第一次修改前的狀態
W 游標移至下一個字首
X 刪除游標前的字元
Y 將當前行存入無名緩沖區,前面加數字表示存入的行數,也可用有
名緩沖區來保存,以後可用命令p或P將其取出
ZZ 存檔退出vi
a 游標後插入正文
b 游標回退至上一個字首
cw 替換當前字
c) 替換當前句子
dw 刪除一個字
dd 刪除一行
e 游標移到下一個字末
f 字元 在當前行向前查找字元
h 游標左移一格
i 在游標前插入正文
j 游標下移一行
k 游標上移一行
l 游標右移一格
m 字母 用字母標記當前行,以後可用 『字母使游標移動到當前行,
(參看』命令)
n 重復上次 / 或 ? 命令
o 在當前行下開辟一新行
p 將用戶緩沖區內容放到游標位置(參看P命令)
r 替換當前字元
s 用一串字元替換當前字元
t 字元 游標移動至字元前
u 取消上次操作
w 游標移至下一字首
x 刪除當前字元
yw 將當前字存入無名緩沖區,前面可加x,表示存入名字為x的有名
緩沖區(x為a-z),也可加數字表示存入的字數,以後可用P或p命
令取出
yy 將當前行存入無名緩沖區,用法參看yw
{ 游標移動至前一段開頭
| 游標移至行首,若前面加數字,則移到數字指定行的行首
} 游標移至下一段開頭
在:提示符下,常用命令如下:
:w 當前文件存檔
:w! 強制存檔
:w 文件 將內容寫入指定文件
:w! 文件 強制寫入指定文件
:x,y w 文件 將 x至 y 行寫入指定文件中
:r 文件 將文件讀到游標位置
:r ! 命令將系統命令的輸出讀到游標位置
:q 退出編輯
:q! 強制退出
:x 與命令ZZ相同
:e 文件名 編輯另一文件
:e ! 重新編輯文件,放棄任何改變
:sh 執行sh,結束後回到編輯
:! 命令 執行命令後回到編輯
:n 編輯下一文件
:n 文件表 重新定義待編輯文件表
:set 設置 vi 的選項,例如 set nu 表示每行前顯示行號,在選項前
加no則表示清除該選項,例如 set nonu 表示每行前不顯示行
號,下面是一些常用的選項:
ai 自動縮進
aw 編輯下一文件前自動存檔
ic 查找字元串時不區分大小寫
nu 每行前顯示行號
sm 輸入)及}時顯示與之配對的( 或 {
slow 插入時延遲屏幕刷新
ws 使查找能繞過文件尾從頭進行
wa 寫文件之前不作對文件的檢查

9. vi編輯命令大全。。

簡單的vi編輯命令,希望能幫到你。。

  1. 輸入

  2. 移動游標位置

    注意: 移動指令必須在命令模式下使用指令: h (左), j (下), k (上), l (右)

    注意: Unix 系統不支持上, 下, 左, 右四個方向鍵,Linux 系統為方便用戶,在vi 中支持上述方向鍵

  3. 刪除文本

    指令:

    (1) x, X : 刪除當前游標所在字元/ 前一個字元

    (2) nx, nX : 刪除從當前游標位置開始後n 個字元(包括當前字元) / 前n 個字元(不包括當前字元)

    (3) D : 刪除當前游標位置開始後的該行所有字元(包括當前字元)

    (4) dd, ndd : 刪除當前游標所在行/ 當前游標所在行開始的後n 行

  4. 復制與粘貼

    指令:

    (1) yy, nyy : 復制游標所在當前行/ 游標所在當前行開始的後n 行(包括當前行)

    (2) yw : 復制游標位置到單詞結束的字元

    (3) p: 在當前游標後粘貼

    (4) P: 在當前游標前粘貼

  5. 查找文本

    指令: /字元串, /, ?字元串, ?

  6. 行號

    (1) : set nu —顯示行號

    (2) : set nonu —取消行號顯示

    (3) : n —將游標移到指定行

    (4) G —將游標移到文檔的最後一行

  7. 其他編輯操作

    還原指令: u

  8. 文件保存與其他操作

    (1) : w (write)

    (2) : w filename

    (3) : w! (! 表示強制)

    (4) : q (quit)

    (5) : q!

    (6) : wq

    (7) : x 等價於:wq

10. vi的常用命令

vi的基本操作
a) 進入vi

在系統提示符號輸入vi及文件名稱後,就進入vi全屏幕編輯畫面:

$ vi myfile

不過有一點要特別注意,就是您進入vi之後,是處於「命令行模式(command mode)」,您要切換到「插入模式(Insert mode)」才能夠輸入文字。初次使用vi的人都會想先用上下左右鍵移動游標,結果電腦一直嗶嗶叫,把自己氣個半死,所以進入vi後,先不要亂動,轉換到「插入模式(Insert mode)」再說吧!

b) 切換至插入模式(Insert mode)編輯文件

在「命令行模式(command mode)」下按一下字母「i」就可以進入「插入模式(Insert mode)」,這時候你就可以開始輸入文字了。

c) Insert 的切換

您目前處於「插入模式(Insert mode)」,您就只能一直輸入文字,如果您發現輸錯了字!想用游標鍵往回移動,將該字刪除,就要先按一下「ESC」鍵轉到「命令行模式(command mode)」再刪除文字。

d) 退出vi及保存文件

在「命令行模式(command mode)」下,按一下「:」冒號鍵進入「Last line mode」,例如:

: w filename (輸入 「w filename」將文章以指定的文件名filename保存)

: wq (輸入「wq」,存檔並退出vi)

: q! (輸入q!, 不存檔強制退出vi)

3、命令行模式(command mode)功能鍵
1). 插入模式

按「i」切換進入插入模式「insert mode」,按「i」進入插入模式後是從游標當前位置開始輸入文件;

按「a」進入插入模式後,是從目前游標所在位置的下一個位置開始輸入文字;

按「o」進入插入模式後,是插入新的一行,從行首開始輸入文字。

2). 從插入模式切換為命令行模式

按「ESC」鍵。

3). 移動游標

vi可以直接用鍵盤上的游標來上下左右移動,但正規的vi是用小寫英文字母「h」、「j」、「k」、「l」,分別控制游標左、下、上、右移一格。

按「ctrl」+「b」:屏幕往「後」移動一頁。

按「ctrl」+「f」:屏幕往「前」移動一頁。

按「ctrl」+「u」:屏幕往「後」移動半頁。

按「ctrl」+「d」:屏幕往「前」移動半頁。

按數字「0」:移到文章的開頭。

按「G」:移動到文章的最後。

按「$」:移動到游標所在行的「行尾」。

按「^」:移動到游標所在行的「行首」

按「w」:游標跳到下個字的開頭

按「e」:游標跳到下個字的字尾

按「b」:游標回到上個字的開頭

按「#l」:游標移到該行的第#個位置,如:5l,56l。

4). 刪除文字

「x」:每按一次,刪除游標所在位置的「後面」一個字元。

「#x」:例如,「6x」表示刪除游標所在位置的「後面」6個字元。

「X」:大寫的X,每按一次,刪除游標所在位置的「前面」一個字元。

「#X」:例如,「20X」表示刪除游標所在位置的「前面」20個字元。

「dd」:刪除游標所在行。

「#dd」:從游標所在行開始刪除#行

5). 復制

「yw」:將游標所在之處到字尾的字元復制到緩沖區中。

「#yw」:復制#個字到緩沖區

「yy」:復制游標所在行到緩沖區。

「#yy」:例如,「6yy」表示拷貝從游標所在的該行「往下數」6行文字。

「p」:將緩沖區內的字元貼到游標所在位置。注意:所有與「y」有關的復制命令都必須與「p」配合才能完成復制與粘貼功能。

6). 替換

「r」:替換游標所在處的字元。

「R」:替換游標所到之處的字元,直到按下「ESC」鍵為止。

7). 回復上一次操作

「u」:如果您誤執行一個命令,可以馬上按下「u」,回到上一個操作。按多次「u」可以執行多次回復。

8). 更改

「cw」:更改游標所在處的字到字尾處

「c#w」:例如,「c3w」表示更改3個字

9). 跳至指定的行

「ctrl」+「g」列出遊標所在行的行號。

「#G」:例如,「15G」,表示移動游標至文章的第15行行首。

4、Last line mode下命令簡介
在使用「last line mode」之前,請記住先按「ESC」鍵確定您已經處於「command mode」下後,再按「:」冒號即可進入「last line mode」。

A) 列出行號

「set nu」:輸入「set nu」後,會在文件中的每一行前面列出行號。

B) 跳到文件中的某一行

「#」:「#」號表示一個數字,在冒號後輸入一個數字,再按回車鍵就會跳到該行了,如輸入數字15,再回車,就會跳到文章的第15行。

C) 查找字元

「/關鍵字」:先按「/」鍵,再輸入您想尋找的字元,如果第一次找的關鍵字不是您想要的,可以一直按「n」會往後尋找到您要的關鍵字為止。

「?關鍵字」:先按「?」鍵,再輸入您想尋找的字元,如果第一次找的關鍵字不是您想要的,可以一直按「n」會往前尋找到您要的關鍵字為止。

D) 保存文件

「w」:在冒號輸入字母「w」就可以將文件保存起來。

E) 離開vi

「q」:按「q」就是退出,如果無法離開vi,可以在「q」後跟一個「!」強制離開vi。

「qw」:一般建議離開時,搭配「w」一起使用,這樣在退出的時候還可以保存文件。

5、vi命令列表
1、下表列出命令模式下的一些鍵的功能:

h
左移游標一個字元

l
右移游標一個字元

k
游標上移一行

j
游標下移一行

^
游標移動至行首

0
數字「0」,游標移至文章的開頭

G
游標移至文章的最後

$
游標移動至行尾

Ctrl+f
向前翻屏

Ctrl+b
向後翻屏

Ctrl+d
向前翻半屏

Ctrl+u
向後翻半屏

i
在游標位置前插入字元

a
在游標所在位置的後一個字元開始增加

o
插入新的一行,從行首開始輸入

ESC
從輸入狀態退至命令狀態

x
刪除游標後面的字元

#x
刪除游標後的#個字元

X
(大寫X),刪除游標前面的字元

#X
刪除游標前面的#個字元

dd
刪除游標所在的行

#dd
刪除從游標所在行數的#行

yw
復制游標所在位置的一個字

#yw
復制游標所在位置的#個字

yy
復制游標所在位置的一行

#yy
復制從游標所在行數的#行

p
粘貼

u
取消操作

cw
更改游標所在位置的一個字

#cw
更改游標所在位置的#個字

2、下表列出行命令模式下的一些指令
w filename
儲存正在編輯的文件為filename

wq filename
儲存正在編輯的文件為filename,並退出vi

q!
放棄所有修改,退出vi

set nu
顯示行號

/或?
查找,在/後輸入要查找的內容

n
與/或?一起使用,如果查找的內容不是想要找的關鍵字,按n或向後(與/聯用)或向前(與?聯用)繼續查找,直到找到為止。

對於第一次用vi,有幾點注意要提醒一下:
1、用vi打開文件後,是處於「命令行模式(command mode)」,您要切換到「插入模式(Insert mode)」才能夠輸入文字。切換方法:在「命令行模式(command mode)」下按一下字母「i」就可以進入「插入模式(Insert mode)」,這時候你就可以開始輸入文字了。
2、編輯好後,需從插入模式切換為命令行模式才能對文件進行保存,切換方法:按「ESC」鍵。
3、保存並退出文件:在命令模式下輸入:wq即可!(別忘了wq前面的:)

閱讀全文

與vi常用的命令相關的資料

熱點內容
安卓為什麼不能安裝procreate 瀏覽:529
如何修復王者榮耀的伺服器 瀏覽:654
javaif多個條件 瀏覽:506
顯示pdf縮略圖 瀏覽:533
奇跡移動命令圖片 瀏覽:857
多玩怎麼開到伺服器 瀏覽:656
基於單片機的水塔水位控制系統設計 瀏覽:480
yd什麼伺服器 瀏覽:520
muduo源碼分析 瀏覽:376
androidselector屬性 瀏覽:536
像素工廠如何加入伺服器 瀏覽:485
移動伺服器地址和埠號 瀏覽:656
互聯醫療app哪個好 瀏覽:212
硬體加密機英文 瀏覽:436
圍棋官子精細演算法講解 瀏覽:160
安卓解鎖頁面有新聞怎麼取消 瀏覽:693
androidr9d下載 瀏覽:641
供銷泰州變頻空氣壓縮機 瀏覽:831
支持php的web伺服器 瀏覽:819
如何下載大文件不解壓 瀏覽:624