AT(1) — UNIX Programmer’s Manual
名称
at − コマンドを後で実行する
形式
at [ −c ] [ −s ] [ −j ] [ −m ] time [ day ] [ file ]
解説
at は、 sh(1) または csh(1) への入力として使用される、指定された file のコピーをスプールします。 −c フラグ (csh(1) の場合) または −s (sh(1))の場合)が指定されると、 そのシェルはジョブを実行するために使用されます。 −j フラグが指定されると jcsh(s) または jsh(s) が使用されます。 シェルが指定されない場合には、 現環境のシェルが使用されます。 ファイル名が指定されない場合には、 at は、^D がタイプされるまで標準入力からのコマンドの入力を促します。
−m フラグが指定された場合には、 ジョブの実行が完了すると、 メールがユーザへ送られます。 ジョブの実行中にエラーが発生した場合には、 エラーメッセージがユーザへ送られます。 エラーが発生しなかった場合には、 ユーザへエラーが発生しなかったことを知らせる短いメッセージが 送られます。
スプールファイルのフォーマットは次のとおりです。 ジョブの所有者、 ジョブの名前、 ジョブを実行するために使用されるシェル、 およびジョブの実行後にメールをセットするか否かを含む 4 行のヘッダです。 ヘッダの後ろには現ディレクトリに対する cd コマンドと、 ジョブによって作成されるファイルにモードを設定する umask コマンドが続きます。 次に、 at は、 スプールファイルへ関連のあるすべての環境変数をコピーします。 スクリプトが実行されるときには、 スプールファイルの作成者のユーザおよびグループIDが使用されます。
time は、 1 から 4 桁の数字であり、 その後ろにはそれぞれ 午前、午後、正午、午前0時を表す 省略可能な ‘A’、‘P’、‘N’、‘M’ のいずれかを付けることができます。 1桁目および 2桁目の数字は時であると解釈され、 3桁目および 4桁目の数字は分であると解釈されます。 数字の後ろに文字がない場合には、24時間制の時刻であると解釈されます。
オプションの day は、 (1) 月の名前の後ろに日を表す数字を続けたもの、 または (2) 曜日のいずれかです。 時刻または曜日のあとに ‘week’を続けた場合には、 呼出しはさらに 7日間延期されます。 月の名前と曜日は、 認識可能なように短縮することができます。 以下に正しいコマンドの例を示します。
at 8am jan 24
at −c −m 1530 fr week
at −s −m 1200n week
cron(8) から /usr/lib/atrun が定期的に実行され、 そこから at が実行されます。 at が行われる時間の精度は、atrun の実行周期に依存します。
リダイレクトされるか −m フラグが要求されない限り、 エラー出力は失われます。 −m フラグが指定されていると、エラーは mail(1) を介してユーザへ送られます。
関連ファイル
/usr/spool/atスプーリング領域
/usr/spool/at/yy.ddd.hhhh.∗ジョブファイル
/usr/spool/at/pastそこからジョブが実行されるディレクトリ
/usr/spool/at/lasttimedone前回の atrun の実行
/usr/lib/atrun実行プログラム(cron(8)によって実行される)
関連事項
atq(1), atrm(1), calendar(1), sleep(1), cron(8)
診断
様々な文法エラーや範囲外の時刻に関して注意します。
バグ
/usr/lib/atrun の実行間隔によって、 at でスケジュールしたものが約 24 時間遅れで実行されることがあります。
システムクラッシュがあると、 ジョブが完了しなかったことを知らせるメールがユーザには送られません。
時々古いスプールファイルがディレクトリ /usr/spool/at/past から 除去されないことがあります。 普通これはシステムクラッシュのせいであり、 このような場合には手動でそれらのファイルを除去することが必要です。
NEWS-OSRelease 3.3