VOS の batch コマンドの癖2009年01月30日 00時24分13秒

VOS にも所定の時刻がきたら、自動的にプログラムを起動する batch コマンドがある。-defer_until で起動時刻を指定できる。

例えば、


batch -defer_until 10:00:00

で 10 時にプログラムが始まるわけだ。

しかし、VOS の batch がどうも癖がある。ここでの、10:00 とはその日の 10:00 と指定していることになる。例えば、11:00 にこの書式で batch 登録をすると、即座に起動することになる。なぜなら、既に 10:00 を越えたからだ。

翌日の 10:00 を指定したいのなら、コマンドラインから明日の日付けも含めて登録しなければならない。


batch -defer_until (date_time coming 10:00:00)

とやることで、明日の 10:00 を指定できる。

VOS のコマンドには英語的解釈からずれたコマンドが時折見かけられる。英語では、this Sunday が前回の日曜日も次回の日曜日を指すこともある。これは文脈次第だ。I watched a movie this Sunday なら、過去の事なので前回の日曜日だ。I will watch a movie this Sunday なら、上と同じ日に言ったとしても、この日曜日は次のを指す。defer until と言ったのなら、次に来る時刻と思うのが普通だろう。