Shell 脚本错误 - 替换错误 - 原则

Shell script error - bad substitution - principle

我是shell脚本编写的新手,我发现所有关于这个的问题都很复杂,所以我决定问这个错误原理的问题。 我有一个 test.sh 文件,它看起来像:

var1="I love Suzi Suzi and Marry"
var2="Sara"
echo "${var1//Suzi/$var2}"

如果我通过 sh test.sh 在终端中 运行 它,我收到此错误 - 替换错误。有人可以告诉我它有什么问题吗?谢谢你。

If I run it in terminal via sh test.sh

这是你的问题。 ${parameter/pattern/string}bash 语法,而不是普通的 sh。 运行 它通过 bash test.sh(And/or 在你的脚本中放置一个适当的 shebang 并使其可执行,这样你就可以 运行 ./test.sh)。