Bashスクリプト:配列でforinloopを使用する

Bashスクリプト:配列でforinloopを使用する

forinループを使用して配列内のすべてのテキストを印刷するスクリプトを作成しようとしています。最初のテキストのみが印刷されます。助けが必要ですか?

#!/bin/bash
somearray=( p 5 6 j 050yh0k 0 hkofohkf 50 )
for k in somearray
do
echo ${somearray[k]}
done

ベストアンサー1

配列のすべての要素を取得するには、コンストラクタを使用する必要があります${var[@]}。したがって、for配列のすべてのメンバーを繰り返すループは次のようになります。

for element in "${somearray[@]}"; do
    echo "$element"
done

おすすめ記事