亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747


 

SED 命令或 流編輯器是 linux / Unix 系統(tǒng)提供的非常強(qiáng)大的實(shí)用程序。它主要用于文本替換,查找和替換,但也可以執(zhí)行其他文本操作,例如 插入,刪除,搜索 等。使用 SED,我們可以編輯完整的文件而無(wú)需打開它。SED 還支持使用正則表達(dá)式,這使得 SED 成為更強(qiáng)大的測(cè)試操作工具。

基本語(yǔ)法如下:

sed OPTIONS… [SCRIPT] [INPUTFILE…]

 

(1) 顯示文件的部分文本

使用 sed,可以只查看文件的一部分,而不是查看整個(gè)文件,示例如下:

[linuxtechi@localhost ~]$ sed -n 22,29p testfile.txt

本例子,選項(xiàng) n 將抑制整個(gè)文件的打印,選項(xiàng) p 將只打印 22-29 行

(2) 顯示除某些行之外的所有行

使用選項(xiàng) d,顯示除 22-29 行之外的所有行

[linuxtechi@localhost ~]$ sed 22,29d testfile.txt

(3) 顯示從第 n 行開始的每 m 行

顯示從第 2 行或任何其他行開始的每 3 行內(nèi)容,使用以下命令

[linuxtechi@localhost ~]$ sed -n '2~3p' file.txt

(4) 刪除一行

其中 N 是行號(hào),選項(xiàng) d 將刪除提到的行號(hào),示例如下:

[linuxtechi@localhost ~]$ sed Nd testfile.txt

若要?jiǎng)h除文件的最后一行,請(qǐng)使用如下命令:

[linuxtechi@localhost ~]$ sed $d testfile.txt

(5) 刪除一系列行

從 testfile.txt 文件中刪除 29-34 行

[linuxtechi@localhost ~]$ sed '29,34d' testfile.txt

(6) 刪除范圍以外的行

從 testfile.txt 文件中刪除 29-34 之外的行

[linuxtechi@localhost ~]$ sed '29,34!d' testfile.txt

(7) 添加空白行 / 空格

使用選項(xiàng) G, 可以在每個(gè)非空行之后添加一個(gè)空行

[linuxtechi@localhost ~]$ sed G testfile.txt

(8) 查找和替換(首次替換)

使用 s 選項(xiàng),將搜索 danger,并將其替換為 saftey,執(zhí)行首次匹配。

[linuxtechi@localhost ~]$ sed 's/danger/safety/' testfile.txt

(9) 查找和替換(全局替換)

為了完全替換文件中的所以單詞,我們將使用帶有 s 的選項(xiàng) g

[linuxtechi@localhost ~]$ sed 's/danger/safety/g' testfile.txt

(10) 替換第 n 次出現(xiàn)的字符串模式

還可以在第 n 次出現(xiàn)時(shí)替換字符串,比如只有在第二次出現(xiàn)時(shí)才用 danger 替換 safety,依然是首次替換模式

[linuxtechi@localhost ~]$ sed 's/danger/safety/2' testfile.txt

為了完全替換第 2 次出現(xiàn)的所有單詞,我們將使用帶有 s 的選項(xiàng) g,完全替換模式

[linuxtechi@localhost ~]$ sed 's/danger/safety/2g' testfile.txt

(11) 替換特定行上的字符串

只替換文件第 4 行的字符串

[linuxtechi@localhost ~]$ sed '4 s/danger/safety/' testfile.txt

替換文件第 4-9 行的字符串

[linuxtechi@localhost ~]$  sed '4,9 s/danger/safety/' testfile.txt

(12) 在匹配搜索之后 / 之前添加一行

使用選項(xiàng) a, 在每個(gè)模式匹配之后添加新行

[linuxtechi@localhost ~]$ sed '/danger/a "This is new line with text after match"' testfile.txt

使用選項(xiàng) i, 在每個(gè)模式匹配之前添加新行

[linuxtechi@localhost ~]$ sed '/danger/i "This is new line with text before match" ' testfile.txt

(13) 用匹配的模式更改整行

使用 c 選項(xiàng),當(dāng)匹配時(shí),正行都會(huì)被新內(nèi)容替換,示例如下:

[linuxtechi@localhost ~]$ sed '/danger/c "This will be the new line" ' testfile.txt

到目前為止,我們只使用 sed 的簡(jiǎn)單表達(dá)式,現(xiàn)在我們將討論 sed 與 regex 的一些高級(jí)用法

(14) 運(yùn)行多個(gè) sed 命令

如果需要執(zhí)行多個(gè) sed 表達(dá)式,可以使用選項(xiàng) e 將 sed 命令鏈接起來(lái)

[linuxtechi@localhost ~]$  sed -e 's/danger/safety/g' -e 's/hate/love/' testfile.txt

(15) 在編輯文件之前進(jìn)行備份

編輯之前創(chuàng)建文件的備份副本,請(qǐng)使用選項(xiàng) -i.bak

[linuxtechi@localhost ~]$ sed -i.bak -e 's/danger/safety/g'  testfile.txt

這將創(chuàng)建擴(kuò)展名為.bak 的文件的備份副本,你也可以使用其他擴(kuò)展,例如 -i.backup

(16) 刪除以模式開頭和結(jié)尾的文件行

刪除以特定字符串開始并以另一個(gè)字符串結(jié)束的行,示例如下:

[linuxtechi@localhost ~]$ sed -e 's/^danger.*stops$//g' testfile.txt

(17) 附加行

使用 sed & regex 在每行之前添加一些內(nèi)容,示例如下:

[linuxtechi@localhost ~]$ sed -e 's/.*/testing sed &/' testfile.txt

(18) 刪除所有注釋行和空行

要?jiǎng)h除所有注釋行,即帶有 # 和所有空行的行,使用如下命令

[linuxtechi@localhost ~]$ sed -e 's/#.*//;/^$/d' testfile.txt

只刪除注釋行,使用如下命令:

[linuxtechi@localhost ~]$ sed -e 's/#.*//' testfile.txt

(19) 從 /etc/passwd 文件獲取所有用戶名

要獲取 /etc/passwd 文件的所有用戶名列表,使用如下命令:

[linuxtechi@localhost ~]$  sed 's/([^:]*).*/1/' /etc/passwd

(20) 防止覆蓋系統(tǒng)鏈接

sed -i 命令已經(jīng)被用來(lái)刪除系統(tǒng)鏈接,并只創(chuàng)建常規(guī)文件來(lái)代替鏈接文件。因此,為了避免這種情況并防止 sed -i 破壞鏈接,請(qǐng)?jiān)趫?zhí)行命令時(shí)使用 follow-symklinks 選項(xiàng)。

假設(shè)我們想在 centos 或 RHEL 服務(wù)器上禁用 SELinux

[linuxtechi@localhost ~]# sed -i --follow-symlinks 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux

分享到:
標(biāo)簽:Linux
用戶無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定