Masayan tech blog.

  1. ブログ記事一覧>
  2. シェルスクリプトの基本:反復(ループ処理)

シェルスクリプトの基本:反復(ループ処理)

公開日

環境

  • gitbash 2.32.0.1

前提

for

基本的な書き方

for 変数 in 値リスト
do
  処理
done

while

基本的な書き方

val=1 // ループの外側でフラグとなる変数を定義

while [条件式]; do
  // 何かしらの処理
done

実装例

for

  • 配列への値の追加は、配列名[添字]=値で可能
  • 添字を参照したい場合は、変数 in ${!配列名[@]}のように指定する
sample1()
{
  list[0]="PHP"
  list[1]="Python"
  list[2]="Ruby"

  for i in ${!list[@]}
  do
    echo "${i}: ${list[$i]}"
  done
}

while

  • 条件式の[]の中に条件を書き、条件がtrueの間、ループし続ける
  • 無限ループをしないために、ループの外で定義した変数をループの中でインクリメントする
  • bashスクリプトのインクリメントは少し癖がある...
  • A -lt Bは、AがBより小さいという条件式
val=1

while [ $val -lt 10 ]
do
  echo $val
  val=$((val += 1))
done

まとめ

いかがでしたでしょうか。本記事では、シェルスクリプトの基本である、反復(ループ処理)の記述方法について紹介しています。ぜひ参考にしてプログラムを組んでみてください。