1
私はBASHからASH(Almquist SHell)にスクリプトを移植しようとしていますが、間接参照に関する問題が発生しています。 ASH(またはDASH)の下で実行すると、以下の機能ASH変数間接参照
cmd() {
# first argument is the index to print (ie label)
arg=$1
# ditch the first argument
shift
# print the label (via indirect reference)
echo "${!arg}"
}
これはBASHの下で期待通りに動作しますが、「悪い代替構文エラー」を生成し、次の出力
cmd 1 one two three
one
cmd 2 one two three
two
cmd 3 one two three
three
を生成する必要があります。これはうまくいくはずですか?そうでない場合、間接参照を使用する代わりに使用できますか?
これは私が思い付いたほぼ正確であるだけ "$(evalのエコー\ $$引数)" エコーを掲示した後 – ctuffli