ループ内のループ変数にアクセスする

ループ内のループ変数にアクセスする
List = 1 2 3 4 5
for i in $LIST
do
sum=`expr $l_$i + $b`
done

ここで、、、およびはl_1特定l_2l_3値を持つ変数です。ループ変数を使用してforループからこれらの値にアクセスしようとすると、式はi値を置き換えます。つまり、ステートメントが代わりに実行されます。さまざまな記号の組み合わせを試してみて、括弧も試してみましたが、何も機能しないようです。助けてください! !l_4l_5i(1 + $b)($l_1 + $b)$

ベストアンサー1

l_iまたはリストを文字列として使用せず、代わりに配列を使用してください。

#! /bin/bash
b=11
l=(12 24 46 68 92)
for i in "${l[@]}" ; do
     ((sum=i+b))
     echo $sum
done

おすすめ記事