リナックスシェルスクリプトでループを使う方法
for ループ
基本構造
in の後に繰り返す項目を直接列挙する。
コード:
for i in apple banana cherry; do
echo "Fruit: $i"
done
出力:
Fruit: apple
Fruit: banana
Fruit: cherry
seq
seq コマンドを使って数値の範囲を指定できる。
コード:
for i in $(seq 1 5); do
echo "Number: $i"
done
出力:
Number: 1
Number: 2
Number: 3
Number: 4
Number: 5
{} 構文
{} 構文を使って複数の項目を一行で列挙できる。
コード:
for i in {A..E}; do
echo "Letter: $i"
done
for i in {1..5}; do
echo "Number: $i"
done
出力:
Letter: A
Letter: B
Letter: C
Letter: D
Letter: E
Number: 1
Number: 2
Number: 3
Number: 4
Number: 5
while ループ
[ の後と ] の前に空白を一つ置く必要がある点に注意。
コード:
double=1
while [ $double -le 500 ]; do
echo "double is $double"
double=$(( double + double ))
done
出力:
double is 1
double is 2
double is 4
double is 8
double is 16
double is 32
double is 64
double is 128
double is 256
