導航:首頁 > 程序命令 > linuxvi命令查找

linuxvi命令查找

發布時間:2023-05-19 12:15:03

A. 請教VI的用法,如何在VI裡面使用查找命令

使用vi編輯器編輯長文件時
方法如下:

1、命令模式下輸入「/字元串」,例如「/Section 3」。

2、如果查找下一個,按「n」即可。

要自當前游標位置向上搜索,請使用以下命令:

/pattern Enter

其中,pattern表示要搜索的特定字元序列。

要自當前游標位置向下搜索,請使用以下命令:

?pattern Enter

按下 Enter鍵後,vi 將搜索指定的pattern,並將游標定位在 pattern的第一個字元處。
例如,要向上搜索 place一詞,請鍵入:
www.2cto.com
vi 查找替換大全

vi/vim 中可以使用 :s 命令來替換字元串。以前只會使用一種格式來全文替換,今天發現該命令
有很多種寫法(vi 真是強大啊,還有很多需要學習),記錄幾種在此,方便以後查詢。

: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

n 為數字,若 n 為 .,表示從當前行開始到最後一行

:%s/vivian/sky/(等同於 :g/vivian/s//sky/) 替換每一行的第一個 vivian 為 sky

:%s/vivian/sky/g(等同於 :g/vivian/s//sky/g) 替換每一行中所有 vivian 為 sky

可以使用 # 作為分隔符,此時中間出現的 / 不會作為分隔符

:s#vivian/#sky/# 替換當前行第一個 vivian/ 為 sky/

:%s+/oradata/apras/+/user01/apras1+ (使用+ 來 替換 / ): /oradata/apras/替換成/user01/apras1/ www.2cto.com

1.:s/vivian/sky/ 替換當前行第一個 vivian 為 sky

:s/vivian/sky/g 替換當前行所有 vivian 為 sky

2. :n,$s/vivian/sky/ 替換第 n 行開始到最後一行中每一行的第一個 vivian 為 sky

:n,$s/vivian/sky/g 替換第 n 行開始到最後一行中每一行所有 vivian 為 sky

(n 為數字,若 n 為 .,表示從當前行開始到最後一行)

3. :%s/vivian/sky/(等同於 :g/vivian/s//sky/) 替換每一行的第一個 vivian 為 sky

:%s/vivian/sky/g(等同於 :g/vivian/s//sky/g) 替換每一行中所有 vivian 為 sky

4. 可以使用 # 作為分隔符,此時中間出現的 / 不會作為分隔符

:s#vivian/#sky/# 替換當前行第一個 vivian/ 為 sky/

5. 刪除文本中的^M

問題描述:對於換行,window下用回車換行(0A0D)來表示,linux下是回車(0A)來表示。這樣,將window上的文件拷到Unix上用時,總會有個^M.請寫個用在unix下的過濾windows文件的換行符(0D)的shell或c程序。 www.2cto.com

· 使用命令:cat filename1 | tr -d 「^V^M」 > newfile;

· 使用命令:sed -e 「s/^V^M//」 filename > outputfilename。需要注意的是在1、2兩種方法中,^V和^M指的是Ctrl+V和Ctrl+M。你必須要手工進行輸入,而不是粘貼。

· 在vi中處理:首先使用vi打開文件,然後按ESC鍵,接著輸入命令:%s/^V^M//。

· :%s/^M$//g

如果上述方法無用,則正確的解決辦法是:

· tr -d "\r" < src >dest

· tr -d "\015" dest

· strings A>B

6. 其它

利用 :s 命令可以實現字元串的替換。具體的用法包括:

:s/str1/str2/ 用字元串 str2 替換行中首次出現的字元串 str1

:s/str1/str2/g 用字元串 str2 替換行中所有出現的字元串 str1
www.2cto.com
:.,$ s/str1/str2/g 用字元串 str2 替換正文當前行到末尾所有出現的字元串 str1

:1,$ s/str1/str2/g 用字元串 str2 替換正文中所有出現的字元串 str1

:g/str1/s//str2/g 功能同上

從上述替換命令可以看到:g 放在命令末尾,表示對搜索字元串的每次出現進行替換;不加 g,表示只對搜索

字元串的首次出現進行替換;g 放在命令開頭,表示對正文中所有包含搜索字元串的行進行替換操作。

B. Linux中vi、vim命令大全

一、一般模式:刪除、復制與粘貼類命令
x,X
x為向後刪除一個字元,X為先前刪除一個字元
nx(n代表數字)
向後刪除n個字元
dd
刪除當前行
D
刪除當前行所有字元,試成為空行
ndd(n代表數字)
刪除游標所在行的向下n列
d1G
刪除游標所在行到第一行的所有數據
dG
刪除游標所在行到最後一行的所有數據
yy
復制游標所在行
y1G
復制游標所在行到第一行的所有數據
yG
復制游標所在行到最後一行的所有數據
ynj(n代表數字)
復制游標所在行向下n+1行
dnj(n代表數字)
刪除游標所在行向下n+1行
p,P
p為復制的數據粘貼在游標的下一行,P為復制的數據粘貼在游標的上一行
J
將游標所在行與下一行的數據結合成一行
u
恢復前一個動作(undo)
二、編輯模式命令
i,I
i為在當前游標所在處插入輸入的文字,I為在游標所在行第一個非空字元插入輸入的文字
a,A
a為在當前游標所在處下一個字元插入輸入的文字,A為在游標所在行最後一個字元的下一個字元處插入輸入的文字
o,O
o為在游標所在行的下一行行首開始插入字元,O為在游標所在行的上一行行首開始插入字元
r,R
r為替換游標所在那一個字元,R為一直替換游標所指的文字,直到退出
Esc
退出,回到一般模式
三、命令模式
h
游標向左移一個字元
j
游標向下移一個字元
k
游標向上移一個字元
l
游標向右移一個字元
Ctrl+f
屏幕向下翻一頁
Ctrl+b
屏幕向上翻一頁
Ctrl+d
屏幕向下翻半頁
Ctrl+u
屏幕向上翻半頁
+
游標移動到下一行的第一個非空字元
-
游標移動到當前行的第一個非空字元
n空格(n代表數字)
游標向當前行向右移動n個字元
0(數字0)
游標移動到當前行的第一個字元(可以為空字元,注意與-區分)
$
游標移動到當前行的最後一個字元(可以為空字元,注意與-區分)
H
游標移動到當前屏幕最上方的那一行的第一個非空字元
M
游標移動到當前屏幕最中間那一行的第一個非空字元
L
游標移動到當前屏幕最下方的那一行的第一個非空字元
G
游標移動到該文章最後一行的第一個非空字元
nG(n代表數字)
游標移動到該文章第n行的第一個非空字元
n
游標從當前行向下移動n行的第一個非空字元
/word
在游標之後查找word字元串
?word
在游標之前查找word字元串
:s/word1/word2/g
在游標當前行查找word1,並替換成word2
:n1,n2s/word1/word2/g
在第n1行與第n2行之間查找word1,並替換成word2
:%s/word1/word2/g
整個文章查找word1,並替換成word2
:w
將編輯的數據保存到硬碟文件中
:w
[filename]
將編輯後的數據保存到硬碟的另一個文件中
:r
[filename]
在編輯數據時,讀入另一個文件中的數據,即將filename文件中的內容加到游標所在行下一行
:wq或:x
保存並退出
:q
退出,適用於未修改的文件
:q!
強制退出,適用於修改文件後不保存退出
:set
nu
顯示行號
:set
nonu
取消行號
:n1,n2
w
[filename]
將n1到n2行的內容保存到名為filename的文件中

C. linux下vi編輯器命令大全

高級一些的編輯器,都會包含宏功能,vim當然不能缺少了,在vim中使用宏是非常方便的:
:qx 開始記錄宏,並將結果存入寄存器x
q 退出記錄模式
@x 播放記錄在x寄存器中的宏命令
稍微解釋一下,當在normal模式下輸入:qx後,你對文本的所有編輯動作將會被記錄下來,再次輸入q即退出了記錄模
式,然後輸入@x對剛才記錄下來的命令進行重復,此命令後可跟數字,表示要重復多少次,比如@x20,可以重復20次。這個在文本的批處理中是非常有用的。
同時編輯多個文件
在vim眾多的插件中,有一個叫minibuffer的插件,就是下面所說的標簽頁功能了,可以支持同時編輯多個文件。
標簽命令
:tabe fn 在一個新的標簽頁中編輯文件fn
gt 切換到下一個標簽頁
gT 切換到上一個標簽頁
:tabr 切換到第一個標簽頁
:tabl 切換到最後一個標簽頁
:tabm [N] 把當前tab移動到第N個tab之後
對,正如你所想像的那樣,跟eclipse, ue等的標簽頁是一個意思!
窗口命令
ctrl+w s 水平分割窗口
ctrl+w w 切換窗口
ctrl+w q 退出當前窗口(由於同時有多個文件,此命令不會影響其他窗口)
ctrl+w v 垂直分割窗口
其他
vim在保存之前不會對文件做實際的修改,只是載入到緩沖區中,對文件的編輯其實是對緩沖區的編輯,直到:w時才會存入物理文件。
:e file 把file載入到新的緩沖區中
:bn 跳轉到下一個緩沖區
:bd 刪除緩沖區(關閉文件)
:sp fn 分割窗口,並將fn載入到新的窗口中
退出編輯器
:w 將緩沖區寫入文件,即保存修改
:wq 保存修改並退出
:x 保存修改並退出
:q 退出,如果對緩沖區進行過修改,則會提示
:q! 強制退出,放棄修改
查找替換
/pattern 向後搜索字元串pattern
?pattern 向前搜索字元串pattern
n 下一個匹配(如果是/搜索,則是向下的下一個,?搜索則是向上的下一個)
N 上一個匹配(同上)
:%s/old/new/g 搜索整個文件,將所有的old替換為new
:%s/old/new/gc 搜索整個文件,將所有的old替換為new,每次都要你確認是否替換
復制粘貼
dd 刪除游標所在行
dw 刪除一個字(word)
x 刪除當前字元
X 刪除前一個字元
D 刪除到行末
yy 復制一行,此命令前可跟數字,標識復制多行,如6yy,表示從當前行開始復制6行
yw 復制一個字
y$ 復制到行末
p 粘貼粘貼板的內容到當前行的下面
P 粘貼粘貼板的內容到當前行的上面
]p 有縮進的粘貼,vim會自動調節代碼的縮進
"a 將內容放入/存入a寄存器,可以支持多粘貼板
附:比如常用的一個寄存器就是系統寄存器,名稱為+,所以從系統粘貼板粘貼到vim中的命令為"+p,注意此處的+不表示操作符,二十一個寄存器。
移動游標
在vim中移動游標跟其他的編輯器中有很大的區別,不過一旦學會了,就會飛速的在文本中移動了。
h,j,k,l 上,下,左,右
ctrl-f 上翻一頁
ctrl-b 下翻一頁
% 跳到與當前括弧匹配的括弧處,如當前在{,則跳轉到與之匹配的}處
w 跳到下一個字首,按標點或單詞分割
W 跳到下一個字首,長跳,如end-of-line被認為是一個字
e 跳到下一個字尾
E 跳到下一個字尾,長跳
b 跳到上一個字
B 跳到上一個字,長跳
0 跳至行首,不管有無縮進,就是跳到第0個字元
^ 跳至行首的第一個字元
$ 跳至行尾
gg 跳至文件的第一行
gd 跳至當前游標所在的變數的聲明處
[N]G 跳到第N行,如0G,就等價於gg,100G就是第100行
fx 在當前行中找x字元,找到了就跳轉至
; 重復上一個f命令,而不用重復的輸入fx
tx 與fx類似,但是只是跳轉到x的前一個字元處
Fx 跟fx的方向相反
),( 跳轉到上/下一個語句
* 查找游標所在處的單詞,向下查找
# 查找游標所在處的單詞,向上查找
`. 跳轉至上次編輯位置
在屏幕上移動
H 移動游標到當前屏幕上最上邊的一行
M 移動游標到當前屏幕上中間的一行
L 移動游標到當前屏幕上最下邊的一行
書簽
ma 把當前位置存成標簽a
`a 跳轉到標簽a處
編輯
r 替換一個字元
J 將下一行和當前行連接為一行
cc 刪除當前行並進入編輯模式
cw 刪除當前字,並進入編輯模式
c$ 擦除從當前位置至行末的內容,並進入編輯模式
s 刪除當前字元並進入編輯模式
S 刪除游標所在行並進入編輯模式
xp 交換當前字元和下一個字元
u 撤銷
ctrl+r 重做
. 重復上一個編輯命令
~ 切換大小寫,當前字元
g~iw 切換當前字的大小寫
gUiw 將當前字變成大寫
guiw 將當前字變成小寫
>> 將當前行右移一個單位
<< 將當前行左移一個單位(一個tab符)
== 自動縮進當前行
插入模式
i 從當前游標處進入插入模式
I 進入插入模式,並置游標於行首
a 追加模式,置游標於當前游標之後
A 追加模式,置游標於行末
o 在當前行之下新加一行,並進入插入模式
O 在當前行之上新加一行,並進入插入模式
Esc 退出插入模式
可視模式
標記文本
v 進入可視模式,單字元模式
V 進入可視模式,行模式
ctrl+v 進入可視模式,列模式,類似於UE的列模式
o 跳轉游標到選中塊的另一個端點
U 將選中塊中的內容轉成大寫
O 跳轉游標到塊的另一個端點
aw 選中一個字
ab 選中括弧中的所有內容,包括括弧本身
aB 選中{}括弧中的所有內容
ib 選中括弧中的內容,不含括弧
iB 選中{}中的內容,不含{}
對標記進行動作
> 塊右移
< 塊左移
y 復制塊
d 刪除塊
~ 切換塊中內容的大小寫

D. linux下vim 查找命令

基礎搜索

先必須知道vim的3中工作模式

智能大小寫搜索

Vim 提供了一個功能,只有當要搜索的單詞 / 模板包含大寫字母時,編輯器才會區分大小寫。要想實現這種功能,必須先設置ignorecase,再接著設置smartcase變數。

:set ignorecase

:set smartcase

例如,如果一個文件中既包含LINUX也包含linux,在開啟智能大小寫搜索功能時,如果使用/LINUX進行搜索,只有單詞LINUX處會被搜到。反之,如果搜索/linux,那麼不論大小寫的搜索結果都會被匹配。

E. Linux之vi命令

vi profile
返回

:q 退出
:wq或者:x或者shift+zz 保存並退出
:q! 不保存並退出
:w 保存
:w! 強制保存

編輯到輸入模式:
i 在當前游標前面輸入
I 在當前游標所在行的行首,轉換為輸入模式
a 在當前游標後面輸入
A 在當前游標所在行的行尾,轉換為輸入模式
o 在當前游標所在行的下方,新建一行,並轉為輸入模式
O 在當前游標所在行的上方,新建一行,並轉為輸入模式

1、 移動游標
字元:方向鍵上下左右或者鍵盤kjhl(上下左右)
單詞:w移至下一個單詞的詞首;e跳至當前或下一個單詞的詞尾;b跳至當前或前一個單詞的詞首
行內:0絕對行首;^行首的第一個非空白字元;$絕對行尾
行間:G文章末尾;3G第3行;gg文章開頭
翻屏:ctrl f【往後翻】;Ctrl b【往前翻】
2、 刪除、替換單個字元
x刪除游標位置字元;3x刪除游標開始3個字元;r替換游標位置字元
dw刪除一個單詞;4dw刪除游標開始的4個單詞;dd刪除游標所在行;5dd刪除游標開始的5行
3、復制粘貼剪切
yw復制一個單詞,p在該行粘貼單詞;yy復制整行,p在該行下方粘貼整行
dd剪切整行,p再粘貼整行;dw剪切一個單詞,p再粘貼一個單詞
4、 撤銷&重做
u:撤銷;ctrl+r:重做撤銷的操作;.重復上一步的操作【假設先dd,再.,會再執行dd命令】

1、 set設置
set nu
set nonu
set readonly #設置只讀文件,不能修改,只在當前環境有效,退出文件,再次打開,這個只讀就無效了
set noreadonly #取消只讀
2、 /查找
/after查找文檔中的after【可以找到所有的after】,n向下翻,N向上翻
:/after查找文檔中的after所在行【可以找到所有的after】,n向下翻,N向上翻
3、!執行命令
比如:查找root目錄
:!ls /root/
4、 查找並替換
格式
【 :查找范圍s/查找的詞/要替換的詞/ 】
或者【:查找范圍s#查找的詞#要替換的詞# 】
或者【:查找范圍s%查找的詞%要替換的詞%】,
即分隔符可以是/、#、%
其中, 查找范圍 包括【.當前游標行】;【$末尾行】;【%全文】;【g一行內全部替換】;【i忽略大小寫】
比如 【 :.,$s/after/before/】 表示在當前游標行【.】到末尾【$】這個范圍內,將after替換為before, 但是如果一行有多個after的話,只會把第一個after替換掉
比如 【 :%s/after/before/】 表示在全文,將after替換為before,但是如果一行有多個after的話,只會把第一個after替換掉。
比如 【:%s/after/before/g】 ,表示在全文,將after替換為before,但是 如果一行有多個after的話,會把該行所有after替換掉,因為在命令裡面加了g
比如 【:%s/after/before/gi】 ,表示在全文,將after替換為before,且忽略大小寫並替換一行內所有after。
比如 【 :%d或者dG】 ,表示刪除全文
比如 【:1,$-4d】 ,表示刪除第一行到倒數第5行的數據
比如 【:1,4y】 ,表示復制1到4行,再按p可粘貼這4行

F. linux中使用vi指令後怎麼輸入

以下是VI有關文件修改與保存的命令:x0dx0ax0dx0a插入命令x0dx0ax0dx0ai 在當前位置生前插入x0dx0ax0dx0aI 在當前行首插入x0dx0ax0dx0aa 在當前位置後插入x0dx0ax0dx0aA 在當前行尾插入x0dx0ax0dx0ao 在當前行之後插入一行x0dx0ax0dx0aO 在當前行之前插入一行x0dx0ax0dx0a查找命令x0dx0ax0dx0a/text查找text,按n健查找下一個,按N健查找前一個。x0dx0ax0dx0a?text查找text,反向查找,按n健查找下一個,按N健查找前一個。x0dx0ax0dx0avim中有一些特殊字元在查找時需要轉義.*[]^%/?~$x0dx0ax0dx0a:set ignorecase忽略大小寫的查找x0dx0ax0dx0a:set noignorecase不忽略大小寫的查找x0dx0ax0dx0a查找很長的詞,如果一個詞很長,鍵入麻煩,可以將游標移動到該詞上,按*或#鍵即可以該單詞進行搜索,相當於/搜索。而#命令相當於?搜索。x0dx0ax0dx0a:set hlsearch高亮搜索結果,所有結果都高亮顯示,而不是只顯示一個匹配。x0dx0ax0dx0a:set nohlsearch關閉高亮搜索顯示x0dx0ax0dx0a:nohlsearch關閉當前的高亮顯示,如果再次搜索或者按下n或N鍵,則會再次高亮。x0dx0ax0dx0a:set incsearch逐步搜索模式,對當前鍵入的字元進行搜索而不必等待鍵入完成。x0dx0ax0dx0a:set wrapscan重新搜索,在搜索到文件頭或尾時,返回繼續搜索,默認開啟。x0dx0ax0dx0a替換命令x0dx0ax0dx0ara 將當前字元替換為a,當期字元即游標所在字元。x0dx0ax0dx0as/old/new/ 用old替換new,替換當前行的第一個匹配x0dx0ax0dx0as/old/new/g 用old替換new,替換當前行的所有匹配殲陸x0dx0ax0dx0a%s/old/new/ 用old替換new,替換所有行的第一個匹配x0dx0ax0dx0a%s/old/new/g 用old替換new,替換整個文件的所有匹配x0dx0ax0dx0a:10,20 s/^/ /g 在第10行知第20行每行前面加四個空格,用於縮進。x0dx0ax0dx0addp 交換游標所在行和其下緊鄰的一行。x0dx0ax0dx0a移動命令x0dx0ax0dx0ah 左移一個字元x0dx0al 右移一個字元,這個命令很少用,一般用w代替。x0dx0ak 上移一個字元x0dx0aj 下移一個字元x0dx0a以上四個命令可以配合數字使用,比如20j就是向下移動20行,5h就是向左移動5個字元,在Vim中,很多命令都可以配合數字使用,比如刪除10個字元10x,在當前位置後插入3個!,3a!,這里的Esc是必須的,否則命令不生效。x0dx0ax0dx0aw 向前移動一個單詞(游標停在單詞首部),如果已到行尾,則轉至下一行行首。此命令悄虛快,可以代替l命令。x0dx0ax0dx0ab 向後移動一個單詞 2b 向後移動2個單詞x0dx0ax0dx0ae,同w,只不過是游標停在單詞尾部x0dx0ax0dx0age,同b,游標啟改燃停在單詞尾部。x0dx0ax0dx0a^ 移動到本行第一個非空白字元上。x0dx0ax0dx0a0(數字0)移動到本行第一個字元上,x0dx0ax0dx0a 移動到本行第一個字元。同0健。x0dx0ax0dx0a$ 移動到行尾 3$ 移動到下面3行的行尾x0dx0ax0dx0agg 移動到文件頭。 = [[x0dx0ax0dx0aG(shift + g) 移動到文件尾。 = ]]x0dx0ax0dx0af(find)命令也可以用於移動,fx將找到游標後第一個為x的字元,3fd將找到第三個為d的字元。x0dx0ax0dx0aF 同f,反向查找。x0dx0ax0dx0a跳到指定行,冒號+行號,回車,比如跳到240行就是 :240回車。另一個方法是行號+G,比如230G跳到230行。x0dx0ax0dx0aCtrl + e 向下滾動一行x0dx0ax0dx0aCtrl + y 向上滾動一行x0dx0ax0dx0aCtrl + d 向下滾動半屏x0dx0ax0dx0aCtrl + u 向上滾動半屏x0dx0ax0dx0aCtrl + f 向下滾動一屏x0dx0ax0dx0aCtrl + b 向上滾動一屏x0dx0ax0dx0a撤銷和重做x0dx0ax0dx0au 撤銷(Undo)x0dx0aU 撤銷對整行的操作x0dx0aCtrl + r 重做(Redo),即撤銷的撤銷。x0dx0ax0dx0a刪除命令x0dx0ax0dx0ax 刪除當前字元x0dx0ax0dx0a3x 刪除當前游標開始向後三個字元x0dx0ax0dx0aX 刪除當前字元的前一個字元。X=dhx0dx0ax0dx0adl 刪除當前字元, dl=xx0dx0ax0dx0adh 刪除前一個字元x0dx0ax0dx0add 刪除當前行x0dx0ax0dx0adj 刪除上一行x0dx0ax0dx0adk 刪除下一行x0dx0ax0dx0a10d 刪除當前行開始的10行。x0dx0ax0dx0aD 刪除當前字元至行尾。D=d$x0dx0ax0dx0ad$ 刪除當前字元之後的所有字元(本行)x0dx0ax0dx0akdgg 刪除當前行之前所有行(不包括當前行)x0dx0ax0dx0ajdG(jd shift + g) 刪除當前行之後所有行(不包括當前行)x0dx0ax0dx0a:1,10d 刪除1-10行x0dx0ax0dx0a:11,$d 刪除11行及以後所有的行x0dx0ax0dx0a:1,$d 刪除所有行x0dx0ax0dx0aJ(shift + j)刪除兩行之間的空行,實際上是合並兩行。x0dx0ax0dx0a拷貝和粘貼x0dx0ax0dx0ayy 拷貝當前行x0dx0ax0dx0anyy 拷貝當前後開始的n行,比如2yy拷貝當前行及其下一行。x0dx0ax0dx0ap 在當前游標後粘貼,如果之前使用了yy命令來復制一行,那麼就在當前行的下一行粘貼。x0dx0ax0dx0ashift+p 在當前行前粘貼x0dx0ax0dx0a:1,10 co 20 將1-10行插入到第20行之後。x0dx0ax0dx0a:1,$ co $ 將整個文件復制一份並添加到文件尾部。x0dx0ax0dx0a正常模式下按v(逐字)或V(逐行)進入可視模式,然後用jklh命令移動即可選擇某些行或字元,再按y即可復制x0dx0ax0dx0addp交換當前行和其下一行x0dx0ax0dx0axp交換當前字元和其後一個字元x0dx0ax0dx0a剪切命令x0dx0ax0dx0a正常模式下按v(逐字)或V(逐行)進入可視模式,然後用jklh命令移動即可選擇某些行或字元,再按d即可剪切x0dx0ax0dx0andd 剪切當前行之後的n行。利用p命令可以對剪切的內容進行粘貼x0dx0ax0dx0a:1,10d 將1-10行剪切。利用p命令可將剪切後的內容進行粘貼。x0dx0ax0dx0a:1, 10 m 20 將第1-10行移動到第20行之後。x0dx0ax0dx0a退出命令x0dx0ax0dx0a:wq 保存並退出x0dx0ax0dx0aZZ 保存並退出x0dx0ax0dx0a:q! 強制退出並忽略所有更改x0dx0ax0dx0a:e! 放棄所有修改,並打開原來文件。

G. LINUX VI編輯器里怎麼查找帶空格和符號的關鍵字

1. 直接查找試試,有的版本可以直接找到x0dx0a2. 用"\"轉義特殊符號,空格不用轉義x0dx0a比如要查找:x0dx0a則要查找的字元為: \

H. linux下vim 查找命令

linux下vim查找命令:

/text--查找text,按n查找下一個,N查找上一個

?text--查找text(反向查找),按n查找下一個,N查找上一個

*/#--查找游標當前的單詞,相當於/text

:setignorecase--查找忽略大小寫

:setnoignorecase--查找不忽略大小寫

:nohlsearch--關閉當前的高亮顯示,當再次查找時恢復高亮

:setincsearch--逐步搜索模式,對當前鍵入的字元進行查找,不必等輸入完成

:setwrapscan--重新搜索,當搜索到文件頭或尾時,返回重新搜索


(8)linuxvi命令查找擴展閱讀:

1、文件窗口:

:openfile--在當前窗口打開新文件

:splitfile--在新窗口打開文件

:newfile--用新窗口打開文件,同:splitfile

:bn--切換到下一個文件

:bp--切換到上一個文件

:args--查看當前打開的文件列表(當前正在編輯的文件會用[]括起來)

:eftp://192.168.10.76/abc.txt

:eqadriveest.txt--打開遠程文件

:split--打開一個新窗口,游標停在頂層的窗口上

:new--打開一個新窗口,游標停在頂層的窗口上

:vsplit--橫向打開窗口。

Ctrl+ww--移動到下一個窗口

Ctrl+wj--移動到下方的窗口

Ctrl+wk--移動到上方的窗口

2、其他命令:

Esc/Ctrl+[--鍵入命令

:!command--執行shell命令

:suspend/Ctrl+Z--掛起vim,回到shell,fg返回vim

:!perl-cscript.pl--檢查perl腳本語法,不用退出vim

:!perlscript.pl--執行perl腳本,不用退出vim

:help--顯示幫助文檔

:helpi--顯示i的幫助文檔(:特殊鍵用<>,-t:啟動參數用-)

3、編輯命令:

插入:

i--在當前位置插入

A--在當前行尾插入

I--在當前行首插入

o--在當前行後插入一行

O--在當前行前插入一行

拷貝粘貼剪切:

yy--拷貝當前行

2yy--拷貝當前行開始的2行

p--在當前游標後粘貼

P--在當前行前粘貼

:1,10co20--將1-10行插入到第20行之後。

:1,$co$--將整個文件復制一份並添加到文件尾部

v--進入選擇模式,相當於在Windows下按住Shift選擇

V--進入選擇模式,整行選擇

ddp--交換當前行和其下一行

2dd--剪切當前行之後的2行

:1,10d--將1-10行剪切

:1,10m20--將第1-10行移動到第20行之後

替換:

ra--將當前游標所在字元替換為a

s/old/new/--用old替換new,替換當前行的第一個匹配

s/old/new/g--用old替換new,替換當前行的所有匹配

%s/old/new/--用old替換new,替換所有行的第一個匹配

%s/old/new/g--用old替換new,替換所有匹配

:10,20s/^/text/g--在第10行到第20行每行前面加上text(:3,5s/^/#/g--注釋3-5行,:3,5s/^#//g
--解除3-5行的注釋,:1,$s/^/#/g--注釋整個文檔,:%s/^/#/g--注釋整個文檔)

ddp--交換游標所在行和下一行

移動:

h--左移一個字元(5h--左移5個字元)

l--右移一個字元(5l--右移5個字元)

k--上移一個字元(5k--上移5個字元)

j--下移一個字元(5j--下移5個字元)

w--向後移動一個單詞(5w--向後移動5個單詞)

b--向前移動一個單詞(5b--向前移動5個單詞)

e--同w,游標停在單詞尾部

ge--同e,游標停在單詞尾部

^--移動到本行第一個非空白字元

0--移動到本行第0個字元

--同0

$--移動到行尾(3$--移動到下面3行的行尾)

gg--移動到文件頭(10gg--移動到第10行首)

[[--同gg

G--移動到文件尾(10G--移動到第10行尾)

]]--同G

fx--移動到本行游標後第一個為x的字元(3fx--移動到本行游標後第3個為x的字元)

Fx--同fx,反向查找

:20--跳到20行行首

Ctrl+e--向下滾動一行

Ctrl+y--向上滾動一行

Ctrl+d--向下滾動半屏

Ctrl+u--向上滾動半屏

Ctrl+f--向下滾動一屏

Ctrl+b--向上滾動一屏

撤銷:

u--撤銷

U--撤銷對整行的操作

Ctrl+r--撤銷剛才的撤銷

刪除:

x--刪除當前字元(3x--刪除當前游標開始向後三個字元)

X--刪除當前字元的前一個字元,同dh

dl--刪除當前字元,同x

dh--刪除前一個字元

dd--刪除當前行

dj--刪除上一行

dk--刪除下一行

10d--刪除當前行開始的10行。

D--刪除當前字元至行尾,同d$

kdgg--刪除當前行之前所有行(不包括當前行)

:1,10d--刪除1-10行

:11,$d--刪除11行及以後所有的行

:1,$d--刪除所有行

J--刪除兩行之間的空行,合並兩行

退出

:wq--保存並退出

ZZ--保存並退出

:q!--強制退出並忽略所有更改

:e!--放棄所有修改,並打開原來文件

:close--關閉窗口,最後一個窗口不能使用此命令,可以防止意外退出vim

:q--如果是最後一個被關閉的窗口,那麼將退出vim

I. Linux如何在vi里搜索關鍵字

在命令模式下敲斜桿( / )這時在狀態欄(也就是屏幕左下腳)就出現了 「/」 然後輸入你要查找的關鍵字敲回車就可以了。

如果你要繼續查找此關鍵字,敲字元 n 就可以繼續查找了。

J. 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 寫文件之前不作對文件的檢查

閱讀全文

與linuxvi命令查找相關的資料

熱點內容
演算法與程序的奧秘章節檢測 瀏覽:377
找pdf 瀏覽:527
與伺服器連接斷開如何處理 瀏覽:831
伺服器維修預計十分鍾什麼意思 瀏覽:168
黑馬程序員主打教學是什麼 瀏覽:39
python九乘法表怎麼編寫 瀏覽:972
思維方式pdf 瀏覽:654
tcc社區app怎麼注冊 瀏覽:937
央視網下載加密 瀏覽:452
命令行訪問伺服器 瀏覽:36
梁加密區箍筋是不是必須封閉箍筋 瀏覽:760
在百度地圖如何定位伺服器地址 瀏覽:570
單片機計數器中斷 瀏覽:296
哈啰安裝文件夾名稱 瀏覽:294
解壓視頻聲控用杯子玩泡沫 瀏覽:740
19年的普通安卓機怎麼樣了 瀏覽:604
如何在app上刷導游題目 瀏覽:861
子彈解壓視頻大全 瀏覽:323
鴻蒙加密等級 瀏覽:806
cocos2dluapdf 瀏覽:494