bash(sh)でcase
文を書くときの基本は次のような感じです。
case $変数 in
パターン1)
実行したい内容1
;;
パターン2)
実行したい内容2
;;
esac
ということで、case
文でよく使われるパターンを2つほど紹介してみようと思います。
曜日ごとに異なる内容を実行したい場合(cronで便利です)
case `date +%a` in
'Sun')
日曜日に実行したい内容
;;
'Mon')
月曜日に実行したい内容
;;
'Tue')
火曜日に実行したい内容
;;
'Wed')
水曜日に実行したい内容
;;
'Thu')
木曜日に実行したい内容
;;
'Fri')
金曜日に実行したい内容
;;
'Sat')
土曜日に実行したい内容
;;
esac
ランダムで何か実行したい場合
case `expr $RANDOM % 3` in
0)
3分の1の確率で実行したい内容
;;
1)
3分の1の確率で実行したい内容
;;
2)
3分の1の確率で実行したい内容
;;
esac