Linux -sed
sed ,查找
sed -n '/root/'p passwd #列出passwd中有root的行
sed -nr '/o+t/'p passwd #sed -r = grep -E 都是進(jìn)行脫意
sed -nr '/0{2}/'p passwd #匹配兩次o的
sed -nr '/root|bus/'p passwd #匹配root 或者bus的
sed -n '2'p passwd # 查找指定的行
sed -n '2,5'p passwd # 查找2,5行
sed -n '2,$'p passwd # 查找2到末行,$代表末行
sed -n '1,$'p passwd #查找全部
sed -e '1'p -e '/111/'p -n test.txt #同一個(gè)表達(dá)式,執(zhí)行多個(gè)操作命令,用-e ,注意的是,如果同時(shí)有兩個(gè)命令匹配一樣的數(shù)據(jù),則會(huì)顯示兩條一模一樣的。
sed -n '/bus/'Ip # I表示不區(qū)分大小寫(xiě)
sed '1,10'd passwd #刪掉某哥文件的前十行,僅僅只是在屏幕當(dāng)初刪除前十行,不會(huì)真正的刪除
sed -i '1,10'd passwd #是真的會(huì)刪除前十行
sed -i '/root/'d passwd #刪掉root 相關(guān)的行
sed '1,10s/root/toor/g' passwd #將1到10行的root全部替換為toor,頁(yè)面會(huì)全部顯示出來(lái)
sed '1,10s/ro+t/r/g' passwd #jiang 1到10行,所有的ro全部替換為r。
sed 's//root/123/g' #這種情況時(shí),會(huì)報(bào)錯(cuò),因?yàn)橄到y(tǒng)不識(shí)別,你是怎么劃分的,應(yīng)該寫(xiě)成:
sed 's\/root\/123/g' 要么用反斜杠,要么用@或#號(hào)
sed -r 's/([^:]+):(.):([^:]+)/\3:\2:\1' #第一段和最一段做替換
([^:]+) : #:加號(hào)以前非:一個(gè)或多個(gè)
. : #貪婪匹配,一直匹配到最后一個(gè)冒號(hào)
\1\2\3 代表三個(gè)括號(hào),既然調(diào)換,則需要寫(xiě)出 \3:\2:\1
sed 's/[a-zA-Z]//g' #將字母全部替換為空,就是刪除字母
sed 's/(.*)/aaa: &/ ' #&表示前面的括號(hào)。 在行首加aaa
轉(zhuǎn)載于:https://blog.51cto.com/13451715/2301530
總結(jié)
以上是生活随笔為你收集整理的Linux -sed的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 洛谷P4364 [九省联考2018]II
- 下一篇: informix linux安装步骤