21.2.3. At ジョブの設定

At ユーティリティを使って特定の時刻に 1 回限りのジョブをスケジュールするには、以下を実行します。
  1. コマンドラインで、コマンド at TIME を入力します。ここでの TIME は、コマンドを実行する時刻です。
    TIME 引数は以下のいずれかの形式で定義できます。
    • HH:MM は、特定の時間と分数を指定します。例えば、04:00 は 4:00 a.m. を指定します。
    • midnight は、12:00 a.m. を指定します。
    • noon は、12:00 p.m. を指定します。
    • teatime は、4:00 p.m. を指定します。
    • MONTHDAYYEAR 形式;例えば、January 15 2012 2002 年 1 月 15 日を指定します。年表示はオプションです。
    • MMDDYYMM/DD/YYMM.DD.YY のいずれかの形式; 例えば、011512 2012 年 1 月 15 日となります。
    • now + TIME ここでの TIME は、整数と分、時間、日、週の値として定義されます。例えば、now + 5 days は、コマンドが5日後の現在と同じ時刻に実行されることを指定します。
      オプションの日付の前に時間を指定する必要があります。時間の形式に関する詳細は、/usr/share/doc/at-<version>/timespec のテキストファイルを参照してください。
    もし指定の時刻が過ぎてしまった場合には、翌日の同じ時刻に実行されます。
  2. 表示されている at> プロンプトで、ジョブコマンドを定義します。
    • ジョブが実行するコマンドを入力し、Enter を押します。複数のコマンドがある場合は、このステップを繰り返します。
    • プロンプトでシェルスクリプトを入力し、スクリプトの各行の後で Enter を押します。
      ジョブは、ユーザーの SHELL 環境で設定されているシェル、ユーザーのログインシェル、/bin/sh のいずれか (最初に検出されたもの) を使用します。
  3. 完了したら、空白行で Ctrl+D を押してプロンプトを終了します。
コマンドセットやスクリプトが標準出力に情報を表示しようと試みる場合は、その出力はユーザーに電子メールで送信されます。
保留中のジョブを表示するには、atq コマンドを使用します。詳細は、「保留中のジョブの表示」 を参照して下さい。
at コマンドの使用を制限することもできます。詳細は、「at と batch へのアクセスの制御」 を参照してください。