Re: (bash) indirect referencing of array
In article <090621020159.M0112747@azusa.ics.nara-wu.ac.jp>, I write:
> bash -c 'a=b; b[3]=c; a[3]=d; d=e; echo ${!a[3]}'
>
> これは(少なくとも手元のbash 3.1.17では)「e」と出力します。そうではなく
> 「c」と出力したい(つまり配列要素を配列名で間接参照したい)のですが、
自己フォローです。間接参照に使う変数の値(上の例ではa)に「[3]」まで含め
てしまえばいいようですね。つまり
bash -c 'a=b[3]; b[3]=c; echo ${!a}'
のような具合です。何だかなあとは思いますけど。
bash -c 'a=b; b[3]=c; echo ${!{a}[3]}'
を許してくれればいいのにと思うんですが、現実にはエラーになっちゃいますね。
nide@ics.nara-wu.ac.jp
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735