| # | スクリプト | | 解説 |
| 1 | #! /bin/bash
| | # |
| 2 | # @(#) world date
| | # |
| 3 | export TZ
| | # 環境変数 TZ(Time Zone) の定義 |
| 4 | TZ=:Japan; printf "%-20s%s\n" "Japan" "`date`"
| | # 日本時間にTZをセットし、日時を表示 | |
| 5 | if [ $# -eq 0 -o $1="all" ]; then
| | # 引数がないか、"all" の場合 |
| 6 | set us uk
| | # us, uk を引数にセットしなおす |
| 7 | fi
| | # |
| 8 |
| | # |
| 9 | while (($#>0))
| | # 引数を順に処理(24行目でシフトしている) |
| 10 | do
| | # |
| 11 | case $1 in
| | # 最初の引数を評価 |
| 12 | 0|uk|UK)
| | #0, uk, UK の場合 |
| 13 |
TZ=:GMT;printf "%-20s%s\n" "England" "`date`"
| | # TZ をGMT(グリニッジ標準時)として、日時を表示 |
| 14 | ;;
| | # |
| 15 | 1|Italy|French|German)
| | # |
| 16 |
TZ=:GMT+1; printf "%-20s%s\n" "England" "`date`"
| | # |
| 17 | ;;
| | # |
| 18 | us|US)
| | # |
| 19 |
TZ=:US/Central; printf "%-20s%s\n" "US-Central" "`date`"
| | # |
| 20 |
TZ=:US/Eastern; printf "%-20s%s\n" "US-Eastern" "`date`"
| | # |
| 21 |
TZ=:US/Hawaii; printf "%-20s%s\n" "US-Hawaii" "`date`"
| | # |
| 22 | ;;
| | # |
| 23 | esac
| | # |
| 24 | shift
| | # |
| 25 | done
| | # |