sed 的全稱為 “Stream Editor” ,字符流編輯程序
1. sed -i '$s/$/\n/' homo1.fa
-
$
第一個(gè)$
代表文本的最后一行蟀瞧;若第幾行可明確寫數(shù)字幾昭躺,如第一行末尾加上h這個(gè)字符sed -i '1s/$/h/' homo1.fa
-
s///
是替代操作届谈,用后面的替代前面的鉴嗤,如s/old/new/
盟劫,如果該行中有多個(gè)old可以使用s/old/new/g
進(jìn)行全部替代航缀。若無(wú)g商架,則只替代最前面一個(gè)old; -
$
第二個(gè)$
表示每一行的行尾。相對(duì)應(yīng)的行首使用^
表示芥玉; -
\n
表示在每一行的行尾加一個(gè)\n
的換行符蛇摸; -
-i
參數(shù)表示直接在原文件進(jìn)行更改
這句合起來(lái)的功能是在最后一行的行尾添加一個(gè)換行符。
2. sed 's/oldtext/newtext&/' inputfile
此處的&
符號(hào)代表被替換的整個(gè)字符串灿巧,它通常用于引用由正則表達(dá)式匹配到的內(nèi)容赶袄。
上例中&
代表的是oldtext這個(gè)被匹配的文本。
所以假定inputfile 中有一行包括oldtext砸烦,這個(gè)sed命令執(zhí)行會(huì)將oldtext替換成newtext并隨后加上oldtext弃鸦。
This is a oldtext.
替換后
This is a newtextoldtext.
&
允許在替換文本保留原文本部分,這在需要保留原始匹配內(nèi)容的情況下很有用幢痘。