linux将字符串添加到特定行的开头

时间:2016-08-23 15:24:29

标签: linux sed

我有一个制表符分隔的文本文件,从一些以'#'开头的行开头。

#line1
#line2
#line3
1    a
1    b

现在,对于没有以'#'开头的每一行,我想添加一个字符串' text'。

#line1
#line2
#line3
text1    a
text2    b

我该怎么做?我想过使用sed

sed "s/^[^#]/text/g" infile > outfile

但是每行第一列的输出只是' text'而不是&text;' text1'或' text2'。

1 个答案:

答案 0 :(得分:4)

您需要捕获并引用[^#]匹配的字符:

sed 's/^[^#]/text&/' infile > outfile