Linux で Cron ジョブを設定する方法

Linux De Cron Jobuwo She Dingsuru Fang Fa



Cron は、タスクをスケジュールし、固定の時間、日付、または間隔で定期的にスクリプトを実行できる時間ベースのジョブ スケジューラです。また、これらのタスクは cron ジョブと呼ばれます。 cron ジョブを使用すると、キャッシュのクリア、データの同期、システムのバックアップとメンテナンスなどの反復的なタスクを効率的に実行できます。

これらの cron ジョブには、人的エラーの可能性を大幅に減らすことができるコマンド自動化などの他の機能もあります。ただし、多くの Linux ユーザーは、cron ジョブのセットアップ中に複数の問題に直面します。したがって、この記事では、Linux で cron ジョブを設定する方法の例を示します。







Cron ジョブを設定する方法

まず、Linux で cron ジョブを設定するには、crontab ファイルについて知っておく必要があります。このファイルにアクセスして、既存の cron ジョブに関する情報を表示したり、編集して新しい cron ジョブを導入したりできます。 crontab ファイルを直接開く前に、以下のコマンドを使用してシステムに cron ユーティリティがあることを確認してください。





須藤 適切なリスト cron

  現在アクティブな crons のリストを表示する





指定された画像に示されているような出力が提供されない場合は、次のコマンドを使用して cron をインストールします。



須藤 apt-get インストール クロン -そして

次に、次のコマンドを使用して、cron サービスがアクティブであることを確認します。

サービスの cron ステータス

  cron サービスのステータスの確認

完了したら、crontab を編集して新しい cron ジョブを開始します。

クロンタブ -それは

システムは特定のテキスト エディタを選択するように求めます。たとえば、入力として「1」を入力して nano エディタを使用します。ただし、cron ジョブに影響を与える要素はその形式であるため、どのエディターでも選択できます。これについては次の手順で説明します。

エディタを選択すると、新しいウィンドウで crontab ファイルが開き、上部に基本的な手順が表示されます。

  cron ジョブの命令

最後に、次の crontab 式をファイルに追加します。

* * * * * / パス / 脚本

ここで、それぞれのアスタリスク (*) は、分、時間、日次、週次、月次を示します。これにより、cron ジョブがスケジュールされた時間にスムーズに実行できるように、時間のあらゆる側面が定義されます。さらに、「パス」と「スクリプト」という用語を、それぞれターゲット スクリプトが含まれるパスとスクリプトの名前に置き換えます。

Cron ジョブをスケジュールするための時間形式

上記のコマンドで説明されている時間形式は混乱を招く可能性があるため、その形式について簡単に説明します。

  1. の中に フィールドには、0 ~ 59 の範囲の値を入力できます。0 と 59 は時計に表示される分を表します。 9 などの入力数値の場合、ジョブは毎時 9 分に実行されます。
  2. のために 時間 では、0 ~ 23 の範囲の値を入力できます。たとえば、午後 2 時の値は「14」になります。
  3. 毎月の日 1 から 31 までの任意の値を指定できます。1 と 31 は、月の最初と最後の日を示します。値 17 の場合、cron ジョブは毎月 17 日に実行されます。
  4. 代わりに には、1 ~ 12 の範囲を入力できます。1 は 1 月を意味し、12 は 12 月を意味します。タスクは、ここで指定した月中にのみ実行されます。

注記: 値「*」は、許容されるすべての値を意味します。たとえば、「分」フィールドの代わりに「*」を使用すると、タスクは指定された時間の毎分に実行されます。

たとえば、毎週火曜日の午前 9 時 30 分に cron ジョブをスケジュールする式は次のとおりです。

30 9 * * 2 / パス / 脚本

たとえば、4 月の週末の午後 5 時に cron ジョブを設定するには、次のようにします。

0 17 * 4 0 6 - 7 / パス / 脚本

上記のコマンドが示すように、カンマとダッシュを使用してフィールドに複数の値を指定できます。したがって、次のセクションでは、crontab 式でのさまざまな演算子の使用について説明します。

Cron ジョブの算術演算子

Linux の経験に関係なく、年に 2 回、月に 3 回などのジョブを自動化する必要があることがよくあります。この場合、オペレーターを使用して、単一の cron ジョブを異なる時間に実行するように変更できます。

  1. ダッシュ(-): ダッシュを使用して値の範囲を指定できます。たとえば、午前 12 時から午後 12 時までの cron ジョブを設定するには、「* 0-12 * * * /path/script」と入力します。
  2. スラッシュ(/): スラッシュは、フィールドの許容値を複数の値に分割するのに役立ちます。たとえば、cron ジョブを四半期ごとに実行するには、「* * * /3 * /path/script」と入力します。
  3. コンマ(、) : 単一の入力フィールド内の 2 つの異なる値はカンマで区切られます。たとえば、月曜日と水曜日に実行されるタスクの cron 式は * * * * 1,3 /path/script です。
  4. アスタリスク(*): 上で説明したように、アスタリスクは入力フィールドが受け入れるすべての値を表します。これは、月のフィールドの代わりにアスタリスクを指定すると、毎月の cron ジョブがスケジュールされることを意味します。

Cron ジョブを管理するコマンド

cron ジョブの管理も重要な側面です。したがって、cron ジョブの一覧表示、編集、削除に使用できるコマンドをいくつか紹介します。

  1. l オプションは、cron ジョブのリストを表示するために使用されます。
  2. r オプションはすべての cron ジョブを削除します。
  3. e オプションは crontab ファイルを編集します。

システムのすべてのユーザーは、個別の crontab ファイルを取得します。ただし、crontab -u username [options] コマンドの間にユーザー名を追加することで、ファイルに対して上記の操作を実行することもできます。

簡単なまとめ

反復的なタスクの実行は時間のかかるプロセスであり、管理者の効率が低下します。 Cron ジョブを使用すると、特定の時間にスクリプトやコマンドを実行するなどのタスクを自動化し、冗長なワークロードを削減できます。したがって、この記事では、Linux で cron ジョブを作成する方法を包括的に説明します。さらに、適切な例を使用して、時刻形式と算術演算子の適切な使用法について簡単に説明しました。