將尾隨單字加入文件中的特定行

將尾隨單字加入文件中的特定行

例如,我有一個文件包含許多這樣的行

AAA ATAGSGSGS
BBB Thhahahahahs
CCC lmmmmm
DDD GAGAGAGAGA

AAA IIIII
BBB OOOO
CCC YYYYY

……等等

我想在以 CCC 開頭的所有行的末尾添加特定單字。

例如。我想添加“微笑”這個詞,所以結果是

AAA ATAGSGSGS
BBB Thhahahahahs
CCC lmmmmm smile
DDD GAGAGAGAGA

AAA IIIII
BBB OOOO
CCC YYYYY smile

你能告訴我該怎麼做嗎?

答案1

sed -i.backup '/^CCC/s/$/ smile/' data.txt

探索這個 sed 指令和程序:

  1. sed -i.backup就地模式-編輯輸入檔並(可選)備份帶有後綴(.backup)的原始檔案。
  2. /^CCC/要尋找的正規表示式 -^以 CCC 開頭 ( ) 的字串。
  3. s/$/ smile/搜尋 string( s/$/) 的結尾並將其替換為 smile ( smile/)。

答案2

嘗試:

sed -E 's/^(CCC.+)/\1 smile/' <data.in >data.out

您也可以就地編輯:

sed -i -E 's/^(CCC.+)/\1 smile/' data.dat

相關內容