Bash字符串替换让我"糟糕的替代"

pro*_*son 8 bash replace

我有一个变量,这是一个网址,我想在bash中替换该网址的一部分,但我不断得到"糟糕的替代"

URL="http://hostname/project/branches/Old_Branch/package"
SRC="Old_Branch"
REP="New_Branch"

echo ${$URL/$SRC/$REP};
# desired output is http://hostname/project/branches/New_Branch/package
Run Code Online (Sandbox Code Playgroud)

不确定我哪里错了...

Gil*_*not 19

URL="http://hostname/project/branches/Old_Branch/package"
SRC="Old_Branch"
REP="New_Branch"

echo "${URL/$SRC/$REP}"
Run Code Online (Sandbox Code Playgroud)

注意in = 没有$sigillURL${}

  • 哇,我不敢相信我在过去一个小时左右的时间里都在为此疯狂。 (2认同)
  • 这是一种 bashism,被称为“参数扩展”。也许 ksh 也有效 (2认同)