真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

sed命令的介紹和用法-創(chuàng)新互聯(lián)

sed是一種流編輯器,它一次處理一行內(nèi)容。處理時(shí),把當(dāng)前處理的行存儲(chǔ)在臨時(shí)緩沖區(qū)中,稱為“模式空間”(pattern space),接著用sed命令處理緩沖區(qū)中的內(nèi)容,處理完成后,把緩沖區(qū)的內(nèi)容送往屏幕。然后讀入下行,執(zhí)行下一個(gè)循環(huán)。如果沒有使諸如‘D’的特殊命令,那會(huì)在兩個(gè)循環(huán)之間清空模式空間,但不會(huì)清空保留空間。這樣不斷重復(fù),直到文件末尾。文件內(nèi)容并沒有改變,除非你使用重定向存儲(chǔ)輸出。

創(chuàng)新互聯(lián)是一家從事企業(yè)網(wǎng)站建設(shè)、成都做網(wǎng)站、成都網(wǎng)站建設(shè)、行業(yè)門戶網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)制作的專業(yè)網(wǎng)站建設(shè)公司,擁有經(jīng)驗(yàn)豐富的網(wǎng)站建設(shè)工程師和網(wǎng)頁設(shè)計(jì)人員,具備各種規(guī)模與類型網(wǎng)站建設(shè)的實(shí)力,在網(wǎng)站建設(shè)領(lǐng)域樹立了自己獨(dú)特的設(shè)計(jì)風(fēng)格。自公司成立以來曾獨(dú)立設(shè)計(jì)制作的站點(diǎn)1000多家。

sed的功能:主要用來自動(dòng)編輯一個(gè)或多個(gè)文件,簡(jiǎn)化對(duì)文件的反復(fù)操作,編寫轉(zhuǎn)換程序等

sed基本用法

sed [option]... 'script' inputfile...

sed [選項(xiàng)].. '腳本這個(gè)腳本是sed自身的腳本' 處理的文件...

常用選項(xiàng):

-n 不輸出模式空間內(nèi)容到屏幕,即不自動(dòng)打印

-e 多點(diǎn)編輯

-f /PATH/SCRIPT_FILE 從指定文件中讀取編輯腳本

-r 支持使用擴(kuò)展正則表達(dá)式

-i.bak 備份文件并原處編輯:直接修改

sed -i.bak(自己定義) '/^root/aadmin';真的修改文件并備份原文件

script:

'地址命令':地址是對(duì)文本中的那個(gè)部分進(jìn)行處理,對(duì)那些行進(jìn)行處理如何進(jìn)行處理就是根據(jù)命令來進(jìn)行處理的

地址定界:

(1) 不給地址:對(duì)全文進(jìn)行處理

(2) 單地址:

#: 指定的行,$:最后一行

/pattern/:被此處模式所能夠匹配到的每一行

(3) 地址范圍:

#,#

#,+#

/pat1/,/pat2/:只顯示中間的部分內(nèi)容

例如:sed -n '/^ftp/,/^sa/p' /etc/passwd

#,/pat1/

(4) ~:步進(jìn)

1~2 奇數(shù)行

seq 10 | sed -n '1~2p'

2~2 偶數(shù)行

seq 10 | sed -n '2~2p'

sed -n '2p' /etc/passwd :只打印第2行

sed命令不僅是對(duì)文本,還可以把一些命令的標(biāo)準(zhǔn)輸出作為輸入進(jìn)行處理

比如:ifconfig eth0 | sed -n '2p'

編輯命令:

d 刪除模式空間匹配的行,并立即啟用下一輪循環(huán)(sed '2d' /etc/passwd 第二行不顯示)

p 打印當(dāng)前模式空間內(nèi)容,追加到默認(rèn)輸出之后(本身就會(huì)打印加上p之后會(huì)在打印一次)

a []text 在指定行后面追加文本,支持使用\n實(shí)現(xiàn)多行追加

seq 10 | sed 'axxx':每一行追加xxx

還可以添加換行符:seq 10 | sed 'axxx\nttt\nzzz'

還可以添加換行符:seq 10 | sed '2axxx\nttt\nzzz'

第二行進(jìn)行追加

i []text 在行前面插入文本:添加斜線表示之后的內(nèi)容為添加的內(nèi)容

c []text 替換行為單行或多行文本

w /path/file 保存模式匹配的行至指定文件

r /path/file 讀取指定文件的文本至模式空間中匹配到的行后

sed -n '/^UUID/r /etc/issue' /etc/fstab:讀取文件內(nèi)容

= 為模式空間中的行打印行號(hào)

! 模式空間中匹配行取反處理

sed '' /etc/passwd :什么都不跟相當(dāng)與顯示一下文件

修改selinux中配置文件

sed -i '/^SELINUX=enforcing/cSELINUX=disabled' /etc/selinux/config

禁用SElinux

sed -i ^C/^SELINUX=/cSELINUX=disabled' /etc/selinux/config

s///g:查找替換,分隔符自己指定,可為s@@@,s###

替換標(biāo)記:g,全局替換;i,忽略大小寫

高級(jí)編輯命令

h:把模式空間中的內(nèi)容覆蓋至保持空間

H:把模式空間中的內(nèi)容追加至保持空間

g:把保持空間中的內(nèi)容覆蓋至模式空間

G:把保持空間中的內(nèi)容追加至模式空間

x:把模式空間和保持空間中的內(nèi)容互換

n:覆蓋讀取匹配到的行的下一行至模式空間

N:追加讀取匹配到的行的下一行至模式空間

d:刪除模式空間中的行

D:刪除多行模式空間中的行

在sed語句中強(qiáng)行引用變量

'''var_name''':使用三個(gè)’引號(hào)在sed語句中可強(qiáng)行引用變量值

例:IP=IP

[root@centos7 test]#ifconfig ens33 | sed -nr 's#.inet (.) net.*#'''$IP''' \1#p'

IP 192.168.0.100

示例:

seq 1 10 | sed -n 'n;p' :取偶數(shù)行

seq 1 10 | sed 'n;d' :取奇數(shù)行

seq 1 10 | sed '1!G;h;$!d' :逆序顯示

seq 1 10 | sed '$!d' :取出最后一行

seq 1 10 | sed '/^$/d;G' :刪除文件中的空白行,而後為所有非空白行添加一個(gè)空白行

seq 1 10 | sed '$!N;$!D' :顯示最后兩行

seq 1 10 | sed 'G' :在原有文件的每行后添加一個(gè)空白行

sed練習(xí):

練習(xí):統(tǒng)計(jì)/etc/init.d/functions文件中每個(gè)單詞出現(xiàn)的次數(shù),并排序(使用grep和sed兩個(gè)命令進(jìn)行實(shí)現(xiàn))

sed -nr 's#[^[:alpha:]]+#\n#gp' /etc/rc.d/init.d/functions | sort |uniq -c |sort -nr

grep -Eo "[[:alpha:]]+" /etc/rc.d/init.d/functions | sort |uniq -c | sort -nr

練習(xí):取出指定網(wǎng)卡的IP地址

ifconfig eth0 |sed -rn '2s/(^.inet )(.)( netmask.*$)/\2/p'

ifconfig eth0|sed -nr '2s/.t (.) net.*/\1/p'

練習(xí):echo /etc/sysconfig/network/ 取出目錄名和基名

目錄名:echo /etc/sysconfig/network/ | sed -nr 's#(./)([^/].)/?$#\1#p'

基名: echo /etc/sysconfig/network/ | sed -nr 's#(./)([^/].)/?$#\2#p'

練習(xí):將文本文件的n和n+1行合并為一行

n為奇數(shù)行:seq 1 10 | sed -n 'N;s#\n##p'

n為偶數(shù)行:seq 1 10 | sed -n '1d;N;s#\n##p'

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


文章標(biāo)題:sed命令的介紹和用法-創(chuàng)新互聯(lián)
網(wǎng)址分享:http://weahome.cn/article/djeohs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部