Linuxでタスクをスケジュールする方法:Crontabファイルの概要

Linuxのcronデーモンは、特定の時間にバックグラウンドでタスクを実行します。これは、Windowsのタスクスケジューラのようなものです。適切な構文を使用してシステムのcrontabファイルにタスクを追加すると、cronが自動的にタスクを実行します。

Crontabファイルは、バックアップ、システムメンテナンス、およびその他の反復タスクを自動化するために使用できます。構文は強力で柔軟性があるため、毎年15分ごと、または特定の日の特定の時間にタスクを実行できます。

Crontabを開く

まず、Linuxデスクトップのアプリケーションメニューからターミナルウィンドウを開きます。Ubuntuを使用している場合は、ダッシュアイコンをクリックし、「ターミナル」と入力してEnterキーを押して開きます。

crontab -eコマンドを使用して、ユーザーアカウントのcrontabファイルを開きます。このファイルのコマンドは、ユーザーアカウントの権限で実行されます。システム権限でコマンドを実行する場合は、sudo crontab-eコマンドを使用してrootアカウントのcrontabファイルを開きます。使用SU -c「のcrontab -e」 Linuxディストリビューションは、sudoを使用していない場合は代わりにコマンドを。

エディターの選択を求められる場合があります。利用可能な場合は、番号を入力してEnterキーを押してNanoを選択します。Viやその他のより高度なエディターは上級ユーザーに好まれるかもしれませんが、Nanoは使い始めるのが簡単なエディターです。

ターミナルウィンドウの上部にある「GNUNano」ヘッダーで識別されるNanoテキストエディタが表示されます。そうでない場合は、crontabがviテキストエディタで開かれている可能性があります。

viの使用に慣れていない場合は、viに:quitと入力し、Enterキーを押して閉じます。実行輸出EDITOR =ナノ実行し、コマンドをcrontabの-eをナノでのcrontabファイルを開くために再び。

新しいタスクの追加

矢印キーまたはPageDownキーを使用して、Nanoのcrontabファイルの一番下までスクロールします。#で始まる行はコメント行です。これは、cronがそれらを無視することを意味します。コメントは、ファイルを編集している人に情報を提供するだけです。

crontabファイルの行は、次の順序で、次の許容値で書き込まれます。

分(0-59)時間(0-23)日(1-31)月(1-12)平日(0-6)コマンド

アスタリスク(*)文字を使用して、任意の値に一致させることができます。たとえば、月にアスタリスクを使用すると、コマンドが毎月実行されます。

たとえば、毎日午前12時30分にコマンド/ usr / bin / exampleを実行するとします。次のように入力します。

29 0 * * * / usr / bin / example

分、時、平日の値は0から始まるため、30分のマークには29を使用し、午前12には0を使用します。日と月の値は0ではなく1から始まることに注意してください。

複数の値と範囲

カンマ区切りの値を特定の複数回使用します。たとえば、行

0,14,29,44 * * * * / usr / bin / example2

/ usr / bin / example2を、毎日、毎時15分の時点で実行します。新しいタスクをそれぞれ新しい行に追加してください。

ダッシュで区切られた値を使用して、値の範囲を指定します。たとえば、行

0 11 * 1-6 * / usr / bin / example3

/ usr / bin / example3を毎日正午に実行しますが、その年の最初の6か月間のみです。

ファイルの保存

Ctrl-Oを押し、Enterキーを押して、crontabファイルをNanoに保存します。ファイルを保存した後、Ctrl-Xショートカットを使用してNanoを閉じます。

新しいcrontabファイルが正常にインストールされたことを示す「crontab:installing newcrontab」メッセージが表示されます。