溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Unix下sed的用法(一)

發(fā)布時(shí)間:2020-07-11 09:35:20 來(lái)源:網(wǎng)絡(luò) 閱讀:509 作者:Oracle小混子 欄目:系統(tǒng)運(yùn)維

sed用法:sed 'Command' filename(s) 只顯示結(jié)果而不修改文件。


1、sed    '2,5d'    file 顯示文件file,除去2-5行,但行數(shù)超過(guò)文件實(shí)際行數(shù)時(shí)不會(huì)報(bào)錯(cuò)。

  sed    '/10[1-4]/d'      file 顯示文件file,除去包含101-104的行。

  sed    '2,$d'            file 顯示文件,只顯示第一行。sed '2,$!d' file則只顯示除第一行外的其它行。

  sed    '/^ *$/d          file 刪除文件中的空行。


2、sed    -n '/10[1-4]/p'   file 只顯示文件file中包含101-104的行。(-n和p必須同時(shí)使用,否則只有p時(shí)顯示全部文件并多顯示一次找到的行)

  sed    -n '5p'           file 只顯示文件的第5行


3、sed 's/moding/moden/g'   file 將moding替換為moden


4、sed -n 's/^west/north/p' file 將west開(kāi)頭的行替換為north并顯示出來(lái)。


5、sed 's/[0-9][0-9][0-9]$/&.5/' file將file文件中以3個(gè)數(shù)字結(jié)尾的行替換為原數(shù)字加".5",&代表搜索到的字符串。


6、sed 's/\(mod\)ing/\1en/g file 將mod做為模式1封裝在括號(hào)里,然后替換。

  sed 's/…$//'           file 刪除每一行的最后三個(gè)字符。

  sed 's/^…//'           file 刪除每一行的頭三個(gè)字符。


7、sed 's#moding#moden#g'   file 將moding替換為moden,s后面的#代表搜索串和替換串之間的分界符。


8、sed -n '/101/,/105/p'    file 顯示從101的匹配行到105的匹配行。如果只找到101的匹配行,則從101的匹配行到文件末。

  sed -n '2,/999/p'        file 顯示從第2行到匹配行。


9、sed '/101/,/105/s/$/  20050119/' file將從101的匹配行到105的匹配行的行末增加"        20050119"內(nèi)容。


10、sed -e '1,3d' -e 's/moding/moden/g' file 先刪除文件的1-3行,再進(jìn)行替換。

   sed -e '/^#/!d'         file 顯示文件以#開(kāi)頭的行。


11、sed '/101/r newfile'    file 在每個(gè)匹配行增加文件newfile的內(nèi)容

   sed '/101/w newfile'    file 把匹配行寫(xiě)入newfile。


12、sed '/101/a\

   > ###'                     file 在匹配行后增加一新行。

   sed '/101/i\

   > ###'                    file 在匹配行前增加一新行。

   sed '/101/c\

   > ###'                    file 用新行替換匹配行。


13、sed 'y/abcd/ABCD/'      file 將a、b、c、d分別替換為ABCD。


14、sed '5q'                file 顯示到第5行時(shí)退出。


15、sed '/101/{ n; s/moding/moden/g; }' file 在文件中找到匹配行的后一行(n)再進(jìn)行替換。

   sed '/101/{ s/moding/moden/g; q; }' file 在文件中找到第一個(gè)匹配行后進(jìn)行替換后再退出。


16、sed -e '/101/{ h; d; }' -e '/104/{ G; }' file 在文件中找到與101匹配行后先存在一個(gè)緩存中,再放在與104匹配行后。

   sed -e '/101/{ h; d; }' -e '/104/{ g; }' file 在文件中找到與101匹配行后先存在一個(gè)緩存中,再替代104的匹配行。

   sed -e '/101/h' -e '$G'                  file 將最后一個(gè)匹配行放在文件末。

   sed -e '/101/h' -e '$g'                  file 將最后一個(gè)匹配行替換文件末行。

   sed -e '/101/h' -e '/104/x'              file 在文件中找到與101匹配行后先存在一個(gè)緩存中,再與104的匹配行進(jìn)行互換。


17、sed -f sfile                             file 根據(jù)文件sfile的命令列表進(jìn)行操作。

   cat sfile

/101/a\

####101####\

****101****

/104/c\

####104 deleted####\

****104 deleted****

1i\

####test####\

****test****



oracle視頻教程請(qǐng)關(guān)注:http://u.youku.com/user_video/id_UMzAzMjkxMjE2.html

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI