1

我编写了自己的 repo 文件并尝试在 bash 中编写安装脚本。

我的代码:

echo -e "[repo name]\nname=repo - $serverver - $basearch...\n.." >> /etc/yum.repos.d/reponame.repo

但是,当我运行命令时,$serververand$basearch不见了。

如何在不尝试确定变量的情况下将变量回显到文件中?

我尝试过

echo -E

"$serverver"

'$serverver'

`$serverver`

\"$serverver\"
4

2 回答 2

2

To add to yum.repos.d use single quotes' instead of double". That preserves the $ signs as it is which is later interpreted by yum.

echo -e '[repo name]\nname=repo - $serverver - $basearch...\n..' >> /etc/yum.repos.d/reponame.repo
于 2013-09-16T18:25:03.987 回答
2
echo -e "[repo name]\nname=repo - \$serverver - \$basearch...\n.." >> /etc/yum.repos.d/reponame.repo

$ 表示 shell 变量扩展。如果你想要一个文字 $ 它必须被转义,如上所述,或者你必须使用单引号。如果要扩展 shell 变量,必须定义它们,否则它们将产生空字符串。

于 2013-09-16T18:39:44.550 回答