Shellスクリプトでcase文の使い方メモ

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

コメントを残す

メールアドレスが公開されることはありません。