如何将字符串与变量连接到Bash中的新变量?

Scy*_*Scy 0 bash shell

我有这样的shell脚本,

#!/bin/bash
foxy1="foxyserver"
H="1"
Run Code Online (Sandbox Code Playgroud)

输出应该是foxyserver.

我试过这个,

echo $foxy$H
Run Code Online (Sandbox Code Playgroud)

这给了我

1
Run Code Online (Sandbox Code Playgroud)

然后我用了

str="foxy$H"
echo $str
Run Code Online (Sandbox Code Playgroud)

输出是

foxy1
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做?

Cha*_*ffy 5

使用间接变量,如BashFAQ#6中所述:

$ foxy1="foxyserver"
$ H="1"
$ varname="foxy$H"
$ echo "${!varname}"
foxyserver
Run Code Online (Sandbox Code Playgroud)