如何在sed命令中包含变量?

时间:2012-06-05 16:51:14

标签: bash unix sed

grep -F "$name" -A1000 filename | sed -n '1p;19p;24p'

假设let a=10,b=20,c=30。在上面的grep命令中,我可以使用'$ap;$bp;$cp'代替'1p;19p;24p'吗?

另一件事,我给了-A1000。这意味着从1p开始考虑直到1000线,对吧?我需要在整个文件中搜索而不给出数字。

1 个答案:

答案 0 :(得分:5)

如果要在引号中包含变量,则需要使用"而不是'

如果要为变量添加字母数字后缀,则需要指明它不是其名称的一部分。

sed -n "${a}p;${b}p;${c}p"

或者:

sed -n "$a"'p;'"$b"'p;'"$c"'p'