GNU/Linux >> Linux の 問題 >  >> Linux

Linuxで「at」コマンドを使用して特定の時間以降にタスクをスケジュールする方法

cronジョブスケジューラの代わりに、at commandを使用すると、構成ファイルを編集せずに、特定の時間に1回実行するようにコマンドをスケジュールできます。

唯一の要件は、このユーティリティをインストールし、その実行を開始して有効にすることです。

# yum install at              [on CentOS based systems]
$ sudo apt-get install at     [on Debian and derivatives]

次に、起動時にサービスを開始して有効にします。

--------- On SystemD ---------
# systemctl start atd
# systemctl enable atd

--------- On SysVinit ---------
# service atd start
# chkconfig --level 35 atd on

一度atd が実行中の場合、次のように任意のコマンドまたはタスクをスケジュールできます。 4を送信します www.google.comにプローブをpingします 次の分が始まるとき(つまり、 22:20:13 の場合) 、コマンドは 22:21:00に実行されます )、結果をメールで報告します(-m 、コマンドを呼び出すユーザーにPostfixまたは同等のものが必要です:

# echo "ping -c 4 www.google.com" | at -m now + 1 minute

-mを使用しないことを選択した場合 オプションの場合、コマンドは実行されますが、標準出力には何も出力されません。ただし、代わりに出力をファイルにリダイレクトすることを選択できます。

さらに、atに注意してください 次の固定時刻を許可するだけでなく、今、正午(12:00)、および真夜中(00:00)だけでなく、カスタムの2桁(時間を表す)および4桁の時刻(時と分)も許可します。

たとえば、

updatedbを実行するには 午後11時 今日(または現在の日付が午後11時より大きい場合は明日 )、実行:

# echo "updatedb" | at -m 23

23:55にシステムをシャットダウンするには 今日(前の例と同じ基準が適用されます):

# echo "shutdown -h now" | at -m 23:55

+を使用して、実行を数分、数時間、数日、数週間、数か月、または数年遅らせることもできます。 最初の例のように、符号と希望の時間指定。

時間の仕様はPOSIX標準の対象となります。

概要

経験則として、コマンドを実行したり、明確に定義された時間に特定のタスクを1回だけ実行したりする場合は、cronジョブスケジューラの代わりにatを使用してください。その他のシナリオでは、 cronを使用します 。

次に、opensslを使用してtarアーカイブファイルを暗号化する方法について説明します。それまでは、 Tecmintに接続したままにしてください。 。


Linux
  1. Linuxatコマンドでタスクをスケジュールする

  2. Linuxgrepコマンドの使用方法

  3. Linuxでhistoryコマンドを使用する方法

  1. LinuxTouchコマンドの使用方法+例

  2. LinuxでCronジョブ形式を使用してタスクをスケジュールする方法

  3. Linux で at を使用してタスクをスケジュールする方法

  1. Linuxの履歴コマンドの使用方法

  2. LinuxでSuコマンドを使用する方法

  3. Linux screen コマンドの使用方法