您好,登錄后才能下訂單哦!
sed介紹
sed(stream editor)是一種非交互式的流編輯器,通過多種轉(zhuǎn)換修改流經(jīng)它的文本。默認(rèn)情況下,sed不會改變原文件本身,而只是對流經(jīng)sed命令的文本進(jìn)行修改,并將修改后的結(jié)果打印到標(biāo)準(zhǔn)輸出中。
sed處理文本時是以行為單位的,每處理完一行就立即打印出來,然后再處理下一行,直至全文處理結(jié)束。sed可做編輯動作包括刪除、查找替換、添加、插入、從其他文件讀入數(shù)據(jù)等。
?
sed命令使用的場景包括以下一些:
常規(guī)編輯器編輯困難的文本。
太過龐大的文本,使用常規(guī)編輯器難以勝任(如vi一個幾百兆的文件)。
有規(guī)律的文本修改,加快文本處理速度(比如說全文替換)。
?
sed命令的功能十分強(qiáng)大,由于sed本身的復(fù)雜度,以及和正則表達(dá)式的結(jié)合,使用sed命令非常難以掌握。只有不斷的多讀用,才能深刻的理解和記住sed的功能。
?
sed常用的命令:
sed命令 ? ?作用 ? ?
a ? ?在匹配行后面加入文本 ? ?
c ? ?字符轉(zhuǎn)換 ? ?
d ? ?刪除行 ? ?
D ? ?刪除第一行 ? ?
i ? ?在匹配行前面接入文本 ? ?
h?? 復(fù)制模板塊的內(nèi)容到存儲空間 ? ?
H ? ?追加模板塊的內(nèi)容到存儲空間 ? ?
g ? ?將存儲空間的內(nèi)容復(fù)制到模式空間 ? ?
G ? ?將存儲空間的內(nèi)容追加到模式空間 ? ?
n ? ?讀取下一個輸入行,用下一個命令處理新的行 ? ?
N ? ?追加下一個輸入行到模板塊后并在二者間插入新行 ? ?
p ? ?打印匹配的行 ? ?
P ? ?打印匹配的第一行 ? ?
q ? ?退出sed ? ?
r ? ?從外部文件中讀取文本 ? ?
w ? ?追加寫文件 ? ?
! ? ?匹配的逆 ? ?
s/old/new ? ?用new替換正則表達(dá)式old ? ?
= ? ?打印當(dāng)前行號 ? ?
?
?
sed常用的參數(shù):
sed參數(shù) ? ?作用 ? ?
-e ? ?多條件編輯 ? ?
-h ? ?幫助信息 ? ?
-n ? ?不輸出不匹配的行 ? ?
-f ? ?指定sed腳本 ? ?
-V ? ?版本信息 ? ?
-i ? ?直接修改原文件 ? ?
?
?
?
?
?
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。