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

アクションスクリプト用のcronジョブを設定します

この記事では、cronが定期的にさまざまなアクションを実行するようにディレクトリとスクリプトを設定する方法について説明します。

この記事ではpicoを使用しています テキストエディタですが、viなどの任意のテキストエディタを使用できます 、vim またはnano

システムスクリプトとディレクトリを設定する

次のコマンドを使用して、cronが実行するシステムスクリプトとディレクトリを設定します。

    [user@server ~]$ sudo mkdir /usr/local/sbin/continuous.active
    [user@server ~]$ sudo mkdir /usr/local/sbin/continuous.inactive
    [user@server ~]$ sudo mkdir /usr/local/sbin/hourly.active
    [user@server ~]$ sudo mkdir /usr/local/sbin/hourly.inactive
    [user@server ~]$ sudo mkdir /usr/local/sbin/daily.active
    [user@server ~]$ sudo mkdir /usr/local/sbin/daily.inactive
    [user@server ~]$ sudo mkdir /usr/local/sbin/weekly.active
    [user@server ~]$ sudo mkdir /usr/local/sbin/weekly.inactive
継続的なジョブのスクリプトを設定する

次のコマンドを実行して、連続ジョブ用のスクリプトファイルを作成し、テキストエディタで開きます。

    [user@server ~]$ sudo pico /usr/local/sbin/continuous.sh

次のスクリプトを挿入して、各コンテナーと、指定された間隔で内部に保持されているすべてのスクリプトを実行します。

    #!/bin/bash
    ACTIVE_SCRIPTS_DIR=/usr/local/sbin/continuous.active
    for module in `find "$ACTIVE_SCRIPTS_DIR" -maxdepth 1 -mindepth 1 -type f`; do
        if [ -x $module ]; then
            $module
        fi
    done

次のコマンドを実行して、 Continuous.shを作成します スクリプト実行可能ファイル:

    [user@server ~]$ sudo chmod u+x /usr/local/sbin/continuous.sh
毎時ジョブのスクリプトを設定する

次のコマンドを実行して、1時間ごとのジョブのスクリプトファイルを作成し、テキストエディタで開きます。

    [user@server ~]$ sudo pico /usr/local/sbin/hourly.sh

次のスクリプトを挿入して、各コンテナと1時間ごとに保持されるすべてのスクリプトを実行します。

    #!/bin/bash
    ACTIVE_SCRIPTS_DIR=/usr/local/sbin/hourly.active
    for module in `find "$ACTIVE_SCRIPTS_DIR" -maxdepth 1 -mindepth 1 -type f`; do
        if [ -x $module ]; then
            $module
        fi
    done

次のコマンドを実行して、 hourly.shを作成します スクリプト実行可能ファイル:

    [user@server ~]$ sudo chmod u+x /usr/local/sbin/hourly.sh
日常業務用のスクリプトを設定する

次のコマンドを実行して、日常のジョブ用のスクリプトファイルを作成し、テキストエディタで開きます。

    [user@server ~]$ sudo pico /usr/local/sbin/daily.sh

次のスクリプトを挿入して、各コンテナと毎日内部に保持されているすべてのスクリプトを実行します。

    #!/bin/bash
    ACTIVE_SCRIPTS_DIR=/usr/local/sbin/daily.active
    for module in `find "$ACTIVE_SCRIPTS_DIR" -maxdepth 1 -mindepth 1 -type f`; do
        if [ -x $module ]; then
            $module
        fi
    done

次のコマンドを実行して、 daily.shを作成します スクリプト実行可能ファイル:

    [user@server ~]$ sudo chmod u+x /usr/local/sbin/daily.sh
毎週のジョブのスクリプトを設定する

次のコマンドを実行して、毎週のジョブ用のスクリプトファイルを作成し、テキストエディタで開きます。

    [user@server ~]$ sudo pico /usr/local/sbin/weekly.sh

次のスクリプトを挿入して、各コンテナと毎週内部に保持されているすべてのスクリプトを実行します。

    #!/bin/bash
    ACTIVE_SCRIPTS_DIR=/usr/local/sbin/weekly.active
    for module in `find "$ACTIVE_SCRIPTS_DIR" -maxdepth 1 -mindepth 1 -type f`; do
       if [ -x $module ]; then
           $module
       fi
    done

次のコマンドを実行して、 weekly.shを作成します スクリプト実行可能ファイル:

    [user@server ~]$ sudo chmod u+x /usr/local/sbin/weekly.sh

crontabファイルにスクリプトを追加する

crontabファイルには、指定された時間に実行されることを意図したコマンドのリストが含まれています。次のコマンドを使用して、crontabファイルを編集します。

    [user@server ~]$ sudo crontab -e

crontabファイルの各行には、次の形式の5つの日付と時刻のフィールドがあります。

    minute (0-59) hour (0-23) day (1-31) month (1-12) weekday (0-6)

時間単位ごとにスクリプトを数回実行する場合は、*/nの形式を使用できます。 、ここでn スクリプトを実行する回数です。

次のエントリをcrontabファイルに追加します。

    MAILTO= [email protected]

    */5 * * * * /usr/local/sbin/continuous.sh
    6 */1 * * * /usr/local/sbin/hourly.sh
    16 02 * * * /usr/local/sbin/daily.sh
    26 03 * * 0 /usr/local/sbin/weekly.sh

コメントや質問をするには、[フィードバック]タブを使用します。 [私たちと会話を始める](https://www.rackspace.com/contact)こともできます。
Linux
  1. cPanelでcronジョブを設定する方法

  2. Cron Job:初心者向けの包括的なガイド2022

  3. Linuxでの使い捨てcronジョブにatを使用する

  1. TrueNASでcronジョブを設定する方法

  2. cronジョブのトラブルシューティング

  3. SshfsにマウントされたファイルシステムにUmaskを設定しますか?

  1. Linuxでcronジョブを設定する方法

  2. 1 時間ごとに実行可能ファイルを実行するように cron ジョブを設定する方法は?

  3. 新しい irssi 接続にデフォルトのニックネームを設定するにはどうすればよいですか?