Bash:使用带有可变行号的sed和行替换中的变量

时间:2014-10-11 21:49:48

标签: bash sed

所以我看到了这个问题:Replace complete line getting number from variable 这是非常相似的,但在我的情况下,我试图使用多个变量:一个用于行号[lineNo],一个用于替换[transFormatted]的文本和它应该在[OUTPUT_FILE]中查找的文件我&# 39;已经尝试了几十种组合试图让它识别所有这些变量,但似乎没有任何效果。无论我尝试哪种方式,它都会感到不快。我做错了什么?

sed -e '${lineNo}s/.*/${transFormatted}/' < $OUTPUT_FILE

2 个答案:

答案 0 :(得分:4)

单引号禁止参数扩展。

sed -e "${lineNo}s/.*/$transFormatted/" < "$OUTPUT_FILE"

答案 1 :(得分:2)

您必须使用双引号来从shell环境中扩展变量。