echo bash变量作为文本

时间:2013-09-16 14:58:10

标签: bash variables echo

我试图将var作为文本回显而不是解析它。我尝试和搜索过的所有内容似乎都告诉我如何回显变量而不是变量文本。

请注意下面的代码就是我所拥有的基本回声。我用这行试过了“$ ARG1 $”等。

echo "command[runcmd]=sudo service $ARG1$ restart" >> testfile

我想要的是显示

command[runcmd]=sudo service $ARG1$ restart

但最终结果是什么

command[runcmd]=sudo service $ restart

我知道这是我的语法错误,但即使在MAN页面中我也似乎无法找到正确的方法。也许我错过了什么。

提前谢谢!

2 个答案:

答案 0 :(得分:5)

只使用单引号:它们阻止变量替换:

echo 'command[runcmd]=sudo service $ARG1$ restart'

答案 1 :(得分:1)

使用单引号(')代替double(“):

echo 'command[runcmd]=sudo service $ARG1$ restart' >> testfile