2

次のような変数があります。

$INFOMonday
$INFOTuesday

私の Bash スクリプトでは、todays 変数の値を使用したいと考えています。私はその日を次のように抽出しました:

dayofweek=$(date --date=${dateinfile#?_} "+%A")

私が助けを必要としているのは、次のことです:

echo $INFO$dayofweek

変数名の一部として変数を追加する方法はありますか? たとえば、月曜日の場合、echo は $INFOMonday の値を返します。

4

1 に答える 1

2

これを行う古いスタイルの方法は、間接演算子を使用すること${!variable}です。

dayofweek=$(date...)
var=INFO$dayofweek
echo ${!var}

${!var}では、文字列式やその他のタイプの置換ではなく、変数名でvarなければならないことに注意してください。少し不格好です。

それを行う新しい方法は、連想配列を使用することです。

于 2013-09-28T01:03:40.740 に答える