シェル スクリプトを少し最適化しようとしており、変数に格納されているユーザー入力に基づいて配列の内容を表示できるようにしたいと考えています。
ここに私のスクリプトからの抜粋があります
logArr( firstLogs secondLogs thirdLogs fourthLogs)
firstLogs=( a b c d e )
secondLogs=( f g h i j )
thirdLogs=( k l m n o )
fourthLogs=( p q r s t )
echo "Please enter a top-level directory for the logger..."
count=1
for i in "${logArr[@]}"
do
echo "$count: $i"
count=`expr $count + 1`
done
read logDir
logDir=`expr $logDir - 1`
logDir=${logArr[$logDir]}
したがって、この時点で、変数にユーザー入力が設定されています$logDir
。それを使用してそれぞれの配列の値を表示する方法はありsecondLogs
ますsecondLogs
か。私はいくつかの評価を試しましたが、うまくいかないようです。
どんな助けでも大歓迎です。
編集: 私のリクエストがあいまいすぎる場合はお知らせください。ありがとう!