目次

whileの基本構文

while の基本構文は以下の通りです。

while [条件式]; do
 処理
done

条件の後の「セミコロン」と「do」については、「do」の前で改行して以下のように書くこともできます。

while [条件式]
do
 処理
done

書き方は好みによりけりなので、自分の中で統一するかプロジェクトに合わせるようにするといいですね。

条件式の書き方

例えば、5 回処理を繰り返したい場合は、整数型の変数 i を 1 で初期化しておき、条件式に i が 6 より小さい間と定義します。

if 文と同じように条件式は [] で囲みます。

#!/bin/sh

declare -i i=1

while [ i -lt 6 ]; do
 echo "i: ${i}"
 i=i+1
done

結果は以下の通り。

i: 1
i: 2
i: 3
i: 4
i: 5

ちなみに条件式に使う [ ですが、実はこれ単体で Linux のコマンドって知ってましたか?

それぞれの括弧の使い方については、下記のサイトに詳しく書かれていますので興味があれば見てください。

ファイルを1行ずつ最後まで読み込みたい

また、以前紹介したファイルを 1 行ずつ読み込んでような処理にも while 文が活躍します。

この場合は標準入力から読み込む read コマンドを使います。

while read line; do
 echo ${line}
done < ファイル

read コマンドについては下記で確認してみてください。

Tips記事一覧

新着記事一覧です。

関連記事一覧

「シェルスクリプトでwhile文を使ってループ処理をする」に関連した記事一覧です。

TOP