bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

linux中vi替換命令 linux怎么用vi命令修改文件

Linux下vim編輯器命令大全

vim可以分為三種狀態(tài),分別是 命令行模式(command mode) 、 輸入模式(Insert mode) 和 底行模式(last line mode) ,這 3 種工作模式可隨意切換,如下圖所示。

成都創(chuàng)新互聯(lián)主營安多網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶App定制開發(fā),安多h5微信小程序開發(fā)搭建,安多網(wǎng)站營銷推廣歡迎安多等地區(qū)企業(yè)咨詢

使用vim編輯文件時,默認(rèn)處于命令行模式。此模式下,可使用方向鍵(上、下、左、右鍵)或 k、j、h、i 移動光標(biāo)的位置,還可以對文件內(nèi)容進(jìn)行復(fù)制、粘貼、替換、刪除等操作。

下圖所示是vim處于命令行模式的狀態(tài)示意圖。

在輸入模式下,vim可以對文件執(zhí)行寫操作,類似于在Windows系統(tǒng)的文檔中輸入內(nèi)容。

使vim進(jìn)行輸入模式的方式是在命令模式狀態(tài)下輸入 i 、 I 、 a 、 A 、 o 、 O 等插入命令(各指令的具體功能下表所示),當(dāng)編輯文件完成后按 esc 鍵即可返回命令模式。

下圖所示為vim處于輸入模式模式下的示意圖。

底行模式用于對文件中的指定內(nèi)容執(zhí)行保存、查找或替換等操作。

使vim切換到底行模式的方法是在 命令行模式 狀態(tài)下按 : 鍵(注意是英文符號),此時vim窗口的左下方出現(xiàn)一個 : 符號,這是就可以輸入相關(guān)指令進(jìn)行操作了。

指令執(zhí)行后vim會自動返回命令行模式。如想直接返回命令行模式,按 esc 即可。

下圖所示為vim進(jìn)入底行模式后的狀態(tài)。

對于新手來說,經(jīng)常不知道自己處于什么模式。不論是自己忘了,還是不小心切換了模式,都可以按一次 esc 鍵返回命令行模式。如果你多按幾次 esc 鍵后聽到"嘀————"的聲音,則代表你已經(jīng)處于命令行模式了。

打開文件

打開文件時光標(biāo)處于文件尾部

打開文件時,光標(biāo)定位到第幾行

字符移動

這些移動鍵都可以加上數(shù)字(5h:向左移動5個字符格)

單詞移動

行內(nèi)跳轉(zhuǎn)

行間移動

在底行模式下,直接給出行號,實現(xiàn)跳轉(zhuǎn)

用法:起始地址,結(jié)束地址 s @要替換內(nèi)容@替換后內(nèi)容@gi(@分隔符)

例 :1,$s/a/A/g 把文件中全部的a換替換成A,全局替換

顯示取消行號

設(shè)定自動縮進(jìn)(寫腳本時)

查找到的文本高亮顯示

語法高亮

/etc/vimrc :全局配置文件,永久有效

~/.vimrc :個人配置文件,每個用戶的家目錄中,若不存在,手動創(chuàng)建

對于第一次用vim的童鞋,有幾點需要提醒一下:

如何在 Vim/Vi 中快速查找和替換文本內(nèi)容

Vim 是 Vi 多模式命令行 編輯器 的加強(qiáng)版,通常默認(rèn)的Unix或Linux系統(tǒng)中都默認(rèn)自帶Vi命令編輯器。當(dāng)然,為了更好的體驗,如果系統(tǒng)默認(rèn)沒有安裝Vim,建議安裝Vim。

通過本文的講解,你將學(xué)會如何在Vim/Vi中快速的使用命令進(jìn)行查找替換文本。

首先,啟動Vim/Vi編輯器,處于正常模式下。如果你不確定是否處于正常模式下,這時你可以按“ESC”,編輯器就會進(jìn)入正常模式。

替換命令的格式一般如下:

該命令表示在[range]的每一行中搜索{pattern},并將其替換為{string}。 [count]是一個乘以命令的正整數(shù)。

如果沒有給出[range]和[count],則僅替換當(dāng)前行中找到的模式。

例如,要搜索當(dāng)前行中字符串“foo”的首次出現(xiàn),并將其替換為“bar”,可以使用:

要替換當(dāng)前行中搜索到的所有內(nèi)容,可以添加 g 標(biāo)志:

如果想搜索和替換整個文件中的匹配內(nèi)容,使用百分比字符 % 作為范圍。此字符指示從文件第一行到最后一行的范圍:

如果省略 {string} 部分即上面的bar,則將其視為空字符串,相當(dāng)于將匹配到的內(nèi)容替換為空,既刪除匹配到的內(nèi)容。

以下命令刪除當(dāng)前行中字符串“foo”的所有實例:

當(dāng)然,除了作為分隔符外,還可以使用任何其他非字母數(shù)字單字節(jié)字符,而不是斜杠字符( / )。例如:

要確認(rèn)每個替換,可以使用 c 標(biāo)志。

替換前會詢問:

按 y 替換匹配項,或按l替換匹配項并退出。 按 n 跳過當(dāng)前匹配,按 q 或 Esc 退出替換。 a 選項替換匹配項和所有剩余匹配項。

若要向下滾動屏幕,請使用 CTRL + Y ,向上滾動,請使用 CTRL + E 。

還可以使用 正則表達(dá)式 作為搜索模式,例如:

^ 符號表示與行首匹配, .* 表示匹配任意數(shù)量的字符。

默認(rèn)情況下,搜索操作區(qū)分大小寫;搜索“FOO”將與“FOo”不匹配。

要忽略搜索模式的案例,請使用 i 標(biāo)志:

另一種強(qiáng)制忽略案例的方法是在搜索模式后添加 \c 。例如, /Linux\c 執(zhí)行忽略大小寫搜索。

當(dāng)未指定范圍時,替換命令僅在當(dāng)前行中操作。

范圍可以是一行,也可以是兩行之間的范圍。 行說明符之間可用英文 , 分隔 ; 字符分割。 可以使用絕對行號或特殊符號指定范圍。

例如,要在從第3行到第10行的所有行中將所有出現(xiàn)的“ foo”替換為“ bar”,可以使用:

該范圍是包含范圍的,這意味著該范圍包括第一行和最后一行。

. 字符表示當(dāng)前行, $ 美元符號表示最后一行。 要在從當(dāng)前行到最后一行的所有行中替換“ foo”:

也可以使用“ +”或“-”符號來設(shè)置行說明符,其后是從前一個行號添加或減去的數(shù)字。 如果省略符號后的數(shù)字,則默認(rèn)為1。

例如,從當(dāng)前行和接下來的四行開始,用“ bar”替換每個“ foo”,鍵入:

替代命令將模式作為字符串而不是整個單詞查找。 例如,如果您正在搜索“ gnu”,則搜索查找匹配“ gnu”嵌入在較大單詞(例如“cygnus” 或 “magnum”)中的情況。

要搜索整個單詞,請鍵入\ 標(biāo)記單詞的開頭,輸入搜索模式,鍵入標(biāo)記單詞的結(jié)尾:

例如,要搜索單詞“ foo”,可以使用 \foo\ :

Vim會跟蹤您在當(dāng)前會話中運行的所有命令。

要瀏覽歷史記錄以查找先前的替代命令,請輸入 :s 并使用向上或向下箭頭鍵查找先前的替代操作。 要運行該命令,只需按Enter。 您也可以在執(zhí)行操作之前編輯命令。

注釋行(在行前添加#)從5到20:

取消注釋行從5到20,恢復(fù)以前的更改:

將“蘋果”,“橙色”和“芒果”的所有實例替換為“水果”:

刪除每行末尾的空格:

搜索和替換在Vim中是一個非常強(qiáng)大的功能,學(xué)會使用它能使您可以快速更改文本,提高自己的工作效率。

歡迎通過查看我個人介紹信息,私信跟我溝通!

Linux之vi命令

vi profile

返回

:q 退出

:wq或者:x或者shift+zz 保存并退出

:q! 不保存并退出

:w 保存

:w! 強(qiáng)制保存

編輯到輸入模式:

i 在當(dāng)前光標(biāo)前面輸入

I 在當(dāng)前光標(biāo)所在行的行首,轉(zhuǎn)換為輸入模式

a 在當(dāng)前光標(biāo)后面輸入

A 在當(dāng)前光標(biāo)所在行的行尾,轉(zhuǎn)換為輸入模式

o 在當(dāng)前光標(biāo)所在行的下方,新建一行,并轉(zhuǎn)為輸入模式

O 在當(dāng)前光標(biāo)所在行的上方,新建一行,并轉(zhuǎn)為輸入模式

1、 移動光標(biāo)

字符:方向鍵上下左右或者鍵盤kjhl(上下左右)

單詞:w移至下一個單詞的詞首;e跳至當(dāng)前或下一個單詞的詞尾;b跳至當(dāng)前或前一個單詞的詞首

行內(nèi):0絕對行首;^行首的第一個非空白字符;$絕對行尾

行間:G文章末尾;3G第3行;gg文章開頭

翻屏:ctrl f【往后翻】;Ctrl b【往前翻】

2、 刪除、替換單個字符

x刪除光標(biāo)位置字符;3x刪除光標(biāo)開始3個字符;r替換光標(biāo)位置字符

dw刪除一個單詞;4dw刪除光標(biāo)開始的4個單詞;dd刪除光標(biāo)所在行;5dd刪除光標(biāo)開始的5行

3、復(fù)制粘貼剪切

yw復(fù)制一個單詞,p在該行粘貼單詞;yy復(fù)制整行,p在該行下方粘貼整行

dd剪切整行,p再粘貼整行;dw剪切一個單詞,p再粘貼一個單詞

4、 撤銷重做

u:撤銷;ctrl+r:重做撤銷的操作;.重復(fù)上一步的操作【假設(shè)先dd,再.,會再執(zhí)行dd命令】

1、 set設(shè)置

set nu

set nonu

set readonly #設(shè)置只讀文件,不能修改,只在當(dāng)前環(huán)境有效,退出文件,再次打開,這個只讀就無效了

set noreadonly #取消只讀

2、 /查找

/after查找文檔中的after【可以找到所有的after】,n向下翻,N向上翻

:/after查找文檔中的after所在行【可以找到所有的after】,n向下翻,N向上翻

3、!執(zhí)行命令

比如:查找root目錄

:!ls /root/

4、 查找并替換

格式

【 :查找范圍s/查找的詞/要替換的詞/ 】

或者【:查找范圍s#查找的詞#要替換的詞# 】

或者【:查找范圍s%查找的詞%要替換的詞%】,

即分隔符可以是/、#、%

其中, 查找范圍 包括【.當(dāng)前光標(biāo)行】;【$末尾行】;【%全文】;【g一行內(nèi)全部替換】;【i忽略大小寫】

比如 【 :.,$s/after/before/】 表示在當(dāng)前光標(biāo)行【.】到末尾【$】這個范圍內(nèi),將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,且忽略大小寫并替換一行內(nèi)所有after。

比如 【 :%d或者dG】 ,表示刪除全文

比如 【:1,$-4d】 ,表示刪除第一行到倒數(shù)第5行的數(shù)據(jù)

比如 【:1,4y】 ,表示復(fù)制1到4行,再按p可粘貼這4行

linux 中如何用vi編輯器替換相同的字符?

1)單字符替換:在命令模式下使光標(biāo)位于要替換的字符,按r,再按需要的字符;

2)取代字符串:在命令模式下

$s/string/replae/g

會將全文的string字符串取代為replace字符串,其中1,$s就是指搜尋區(qū)間為文章從頭至尾的意思,g則是表示全部取代不必確認(rèn)。

%s/string/replace/c:同樣會將全文的string字符串取代為replace字符串,和上面指令不同的地方是,%s和1,$s是相同的功能,c則是表示要替代之前必須再次確認(rèn)是否取代。

1,20s/string/replace/g:將1至20行間的string替代為relpace字符串。

當(dāng)前題目:linux中vi替換命令 linux怎么用vi命令修改文件
網(wǎng)站路徑:http://vcdvsql.cn/article22/hpgpjc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計網(wǎng)站排名軟件開發(fā)微信公眾號響應(yīng)式網(wǎng)站移動網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化