2012-08-17 190 views
2

1)如何使用sed將追加標記添加到匹配模式的行中,同時也打印與模式不匹配的行?打印匹配和不匹配的行; awk:打印匹配組

如果我這樣做'sed -n s/pattern/pattern mark/p',所有不匹配的行將不會被打印。

[解決]

+0

剛剛發現「gensub」可以解決我的第二個問題。所以我仍然有第一個問題需要解決。謝謝 – lukmac 2012-08-17 13:57:37

+0

我也投票結束它。 – lukmac 2012-08-17 14:13:25

回答

4

如果不抑制使用-n默認輸出,sed中會打印出所有行:

sed 's/pattern/pattern mark/' 
0

不正是回答了這個問題,但如果你想在下面的行添加一些文本的一種方法是使用的GNU版本的sed附加命令:

sed -e '/pattern/ a mark' infile 
+0

這將「標記」本身放在一個新的線上。 – 2012-08-17 14:02:05

+0

@WilliamPursell:好的。現在實現了。錯過了這個問題。感謝您指出錯誤。 – Birei 2012-08-17 14:04:11

1

對於SED的問題,只是這樣做:

sed '/pattern/s/$/pattern marker/' 

到圖案標記追加到匹配

哪些行