bashシェルスクリプトで、配列の要素を1つずつ取り出して、ループ処理を行う方法を解説します。
はじめに
本記事では、以下のような配列にある要素を1つずつ取り出し、ループ処理を行う方法を説明します。
配列=("要素1" "要素2" "要素3")
↑の配列を元にループしつつ、要素を1つずつ表示する。
1回目の処理 → 要素1と表示される 2回目の処理 → 要素2と表示される 3回目の処理 → 要素3と表示される
サンプルと実行結果
配列を元にループするサンプルと実行結果です。
#!/bin/bash array=("要素1" "要素2" "要素3") for buf in "${array[@]}" do echo ${buf} done
上記サンプルの実行結果です。
配列に格納されている要素が1つずつ表示されます。
要素1 要素2 要素3
何周目の処理かを表示する
前項のサンプルに加えて、現在の処理がループの何周目の処理かを表示する方法を説明します。
*ループ回数をカウントして、表示している部分は赤字にしています。
#!/bin/bash array=("要素1" "要素2" "要素3") for buf in "${array[@]}" do count=$((++count)) echo "ループ${count}:${buf}" done
上記サンプルの実行結果です。
ループ1:要素1 ループ2:要素2 ループ3:要素3
リンク
コメント