使用bash命令在每行的开头添加命令

时间:2018-10-04 05:26:11

标签: regex bash shell

如何在每行示例的开头添加命令-

我的文件包含以下文本-

abc
efg
hij

所以我想添加这个sed -n '/^<<</,/^>>>/p',即

sed -n '/^<<</,/^>>>/p' abc
sed -n '/^<<</,/^>>>/p' efg
sed -n '/^<<</,/^>>>/p' hij

我试图运行此命令

sed -i 's/^/sed -n '/^<<</,/^>>>/p'' test.txt,但无效。

有人可以在这里帮忙吗?

1 个答案:

答案 0 :(得分:0)

您可以为此使用awk:

$ cat test 
abc
def
ghi
$ awk '{print "sed -n \x27/^<</,/^>>/p\x27 " $0}' test
sed -n '/^<</,/^>>/p' abc
sed -n '/^<</,/^>>/p' def
sed -n '/^<</,/^>>/p' ghi

我敢肯定,与'相比,在印刷版本中使用\x27可以具有更好的风格,但是目前我对此并不了解。