在文件中添加前缀匹配的行

时间:2012-01-17 10:29:55

标签: parsing sed awk grep

我自己尝试过这样做:

for i in $(grep something toprefix.log); do sed -i -e 's/^/prefix/' $i; done

首先,为头脑发誓道歉 - 我知道上述情况不起作用!

基本上,我想使用grep和sed或awk为日志文件中的匹配行应用前缀。

prefix-matching
prefix-matching
not-matching
prefix-matching
not-matching
not-matching
prefix-matching

提前致谢。

2 个答案:

答案 0 :(得分:3)

$ sed -i '/something/s/^/prefix/' toprefix.log

修改:有关详细信息,请参阅http://www.gnu.org/software/sed/manual/html_node/Addresses.html

修改:删除'<'因为'-i'被使用了。

修改标签为\t,所以

$ sed -i '/something/s/^/prefix\t/' toprefix.log

添加prefix和标签。

答案 1 :(得分:1)

awk

awk '/something/{print "prefix\t"$0;next}1' myfile > mynewfile