sed

[root@localhost ~]# sed [選項] ‘[動作]’ 文件名
選項:
-n: 一般 sed 命令會把所有數(shù)據(jù)都輸出到屏幕氮昧,如果加入此選擇,則只會
把經(jīng)過 sed 命令處理的行輸出到屏幕蜕猫。
-e: 允許對輸入數(shù)據(jù)應(yīng)用多條 sed 命令編輯祭阀。
-f 腳本文件名: 從 sed 腳本中讀入 sed 操作惦界。和 awk 命令的-f 非常類似。
-r: 在 sed 中支持?jǐn)U展正則表達(dá)式霞溪。
-i: 用 sed 的修改結(jié)果直接修改讀取數(shù)據(jù)的文件孵滞,而不是由屏幕輸出
動作:
a \: 追加,在當(dāng)前行后添加一行或多行鸯匹。添加多行時坊饶,除最后 一行外,
每行末尾需要用“\”代表數(shù)據(jù)未完結(jié)殴蓬。
c \: 行替換幼东,用 c 后面的字符串替換原數(shù)據(jù)行,替換多行時科雳,除最后一行
外根蟹,每行末尾需用“\”代表數(shù)據(jù)未完結(jié)。
i \: 插入糟秘,在當(dāng)期行前插入一行或多行简逮。插入多行時,除最后 一行外尿赚,
每行末尾需要用“\”代表數(shù)據(jù)未完結(jié)散庶。
d: 刪除,刪除指定的行凌净。
p: 打印悲龟,輸出指定的行。
s: 字串替換冰寻,用一個字符串替換另外一個字符串须教。格式為“行范圍 s/
舊字串/新字串/g”(和 vim 中的替換格式類似)。

[root@localhost ~]# sed '2p' student.txt 
ID Name PHP Linux MySQL Average
1 Liming 82 95 86 87.66
1 Liming 82 95 86 87.66
2 Sc 74 96 87 85.66
3 Tg 99 83 93 91.66

只輸出第二行

[root@localhost ~]# sed -n '2p' student.txt 
1 Liming 82 95 86 87.66
[root@localhost ~]# sed '2,4d' student.txt 
#刪除第二行到第四行的數(shù)據(jù)
ID Name PHP Linux MySQL Average
[root@localhost ~]# cat student.txt 
#但是文件本身并沒有修改
ID Name PHP Linux MySQL Average
1 Liming 82 95 86 87.66
2 Sc 74 96 87 85.66
3 Tg 99 83 93 91.66
[root@localhost ~]# sed '2a hello' student.txt 
#在第二行后加入 hello
[root@localhost ~]# sed '2i hello \
> world' student.txt
#在第二行前插入兩行數(shù)據(jù)
[root@localhost ~]# sed -n '2i hello \ 
#只查看 sed 命令操作的數(shù)據(jù)
> world' student.txt

“-n”只查看 sed 命令操作的數(shù)據(jù),而不是查看所有數(shù)據(jù)轻腺。

字符串替換

“c”動作是進(jìn)行整行替換的乐疆,如果僅僅想替換行中的部分?jǐn)?shù)據(jù),就要使用“s”動作了贬养。s 動作
的格式是:

[root@localhost ~]# sed ‘s/舊字串/新字串/g’ 文件名

[root@localhost ~]# sed '3s/74/99/g' student.txt 
#在第三行中挤土,把 74 換成 99

[root@localhost ~]# sed '4s/^/#/g' student.txt 
#這里使用正則表達(dá)式,“^”代表行首

[root@localhost ~]# sed -e 's/Liming//g ; s/Tg//g' student.txt 
#同時把“Liming”和“Tg”替換為空

“-e”選項可以同時執(zhí)行多個 sed 動作误算,當(dāng)然如果只是執(zhí)行一個動作也可以使用“-e”選項仰美,但
是這時沒有什么意義。還要注意儿礼,多個動作之間要用“咖杂;”號或回車分割

[root@localhost ~]# sed -e 's/Liming//g 
> s/Tg//g' student.txt
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市蜘犁,隨后出現(xiàn)的幾起案子翰苫,更是在濱河造成了極大的恐慌止邮,老刑警劉巖这橙,帶你破解...
    沈念sama閱讀 211,423評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異导披,居然都是意外死亡屈扎,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,147評論 2 385
  • 文/潘曉璐 我一進(jìn)店門撩匕,熙熙樓的掌柜王于貴愁眉苦臉地迎上來鹰晨,“玉大人,你說我怎么就攤上這事止毕∧@” “怎么了?”我有些...
    開封第一講書人閱讀 157,019評論 0 348
  • 文/不壞的土叔 我叫張陵扁凛,是天一觀的道長忍疾。 經(jīng)常有香客問我,道長谨朝,這世上最難降的妖魔是什么卤妒? 我笑而不...
    開封第一講書人閱讀 56,443評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮字币,結(jié)果婚禮上则披,老公的妹妹穿的比我還像新娘。我一直安慰自己洗出,他們只是感情好士复,可當(dāng)我...
    茶點故事閱讀 65,535評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著翩活,像睡著了一般判没。 火紅的嫁衣襯著肌膚如雪蜓萄。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,798評論 1 290
  • 那天澄峰,我揣著相機(jī)與錄音嫉沽,去河邊找鬼。 笑死俏竞,一個胖子當(dāng)著我的面吹牛绸硕,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播魂毁,決...
    沈念sama閱讀 38,941評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼玻佩,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了席楚?” 一聲冷哼從身側(cè)響起咬崔,我...
    開封第一講書人閱讀 37,704評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎烦秩,沒想到半個月后垮斯,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,152評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡只祠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,494評論 2 327
  • 正文 我和宋清朗相戀三年兜蠕,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片抛寝。...
    茶點故事閱讀 38,629評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡熊杨,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出盗舰,到底是詐尸還是另有隱情晶府,我是刑警寧澤,帶...
    沈念sama閱讀 34,295評論 4 329
  • 正文 年R本政府宣布钻趋,位于F島的核電站川陆,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏爷绘。R本人自食惡果不足惜书劝,卻給世界環(huán)境...
    茶點故事閱讀 39,901評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望土至。 院中可真熱鬧购对,春花似錦、人聲如沸陶因。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至解幽,卻和暖如春贴见,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背躲株。 一陣腳步聲響...
    開封第一講書人閱讀 31,978評論 1 266
  • 我被黑心中介騙來泰國打工片部, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人霜定。 一個月前我還...
    沈念sama閱讀 46,333評論 2 360
  • 正文 我出身青樓档悠,卻偏偏與公主長得像,于是被迫代替她去往敵國和親望浩。 傳聞我的和親對象是個殘疾皇子辖所,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,499評論 2 348

推薦閱讀更多精彩內(nèi)容