4 1回かぎりのタスクの実行
atd
サービスのat
およびbatch
コマンドを使用して、1回かぎりのタスクをスケジュール
これらのコマンドを使用する前に、at
サービスが実行中であることを確認します:
sudo systemctl is-active atd
詳細は、at(1)
マニュアル・ページを参照してください。
指定した時間に1回のみ実行するようにタスクをスケジュールするには、at
コマンドを使用します。
たとえば、$HOME/atjob
でスクリプトを20分以内に実行するようにジョブをスケジュールするには、次のコマンドを実行します:
at now + 20 minutes < $HOME/atjob
job 1 at 2025-06-13 11:25
システム・ロード平均が低いときにバッチ・ジョブを実行するようにスケジュールするには、batch
コマンドを使用します。
たとえば、システム・ロード平均が0.8より小さい場合に$HOME/batchjob
でスクリプトを実行するバッチ・ジョブを実行するには、次のコマンドを実行します:
batch < batchjob
job 2 at 2025-06-13 11:31
ノート:
システム・ロード平均のしきい値(このしきい値を下回ったときにユーザー定義のバッチ・ジョブが実行される)は、デフォルトでは0.8です。 この値がどのように異なるかの詳細は、「バッチ・ジョブの動作の変更」を参照してください。
キューにあるスケジュール済1回かぎりのジョブをすべてリストするには、次のコマンドを実行します:
sudo atq
job 1 at 2025-06-13 11:25
job 2 at 2025-06-13 11:31
キューに入れられた1つ以上のジョブを取り消すには、次の例のように、atrmコマンドにそのジョブ番号を指定します。
sudo atrm 2