在Bash中传递变量两次

时间:2017-07-24 11:40:19

标签: string bash variables

我希望命令:echo "$string4"能够在循环期间返回我文件开头定义的SETFIELDS_X_XX变量的值。但是,它只返回名称 SETFIELDS_X_XX。我做错了什么?

SETFIELDS_2_25=225
SETFIELDS_2_200=2200
SETFIELDS_2_500=2500
SETFIELDS_10_25=1025
SETFIELDS_10_200=10200
SETFIELDS_10_500=10500
SETFIELDS_10_1000=101000
SETFIELDS_50_25=5025
SETFIELDS_50_200=50200
SETFIELDS_50_500=50500
SETFIELDS_50_1000=501000

for LBUB in 2 10 50
do
    for generations in 25 200 500 1000
    do
        string1="SETFIELDS_"
        string2="$LBUB"
        string3="_$generations"
        string4=$string1$string2$string3
    #echo "LBUB = $LBUB"
    #echo "generations = $generations"
    echo "$string4"
    done
done

1 个答案:

答案 0 :(得分:1)

请改用:

echo ${!string4}

它将打印存储在变量SETFIELDS_X_XX

中的值