GNU/Linux >> Znalost Linux >  >> Linux

Nastavte úlohy cronu pro skriptování akcí

Tento článek popisuje, jak nastavit adresáře a skripty, aby cron spouštěl různé akce v pravidelných časech.

Tento článek používá pico textový editor, ale můžete použít jakýkoli textový editor, který chcete, například vi , vim nebo nano .

Nastavení systémových skriptů a adresářů

Pomocí následujících příkazů nastavte systémové skripty a adresáře pro spouštění 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

Nastavit skript pro nepřetržité úlohy

Spuštěním následujícího příkazu vytvořte soubor skriptu pro nepřetržité úlohy a otevřete jej v textovém editoru:

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

Vložte následující skript ke spuštění každého kontejneru a všech skriptů uložených uvnitř v zadaném intervalu:

    #!/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

Spusťte následující příkaz a vytvořte continuous.sh spustitelný skript:

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

Nastavit skript pro hodinové úlohy

Spuštěním následujícího příkazu vytvořte soubor skriptu pro hodinové úlohy a otevřete jej v textovém editoru:

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

Vložte následující skript ke spuštění každého kontejneru a všech skriptů uložených v hodině:

    #!/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

Spusťte následující příkaz a vytvořte soubor hourly.sh spustitelný skript:

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

Nastavit skript pro každodenní úlohy

Spuštěním následujícího příkazu vytvořte soubor skriptu pro denní úlohy a otevřete jej v textovém editoru:

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

Chcete-li každý kontejner a všechny skripty uchovávané uvnitř denně spouštět, vložte následující skript:

    #!/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

Spusťte následující příkaz a vytvořte soubor daily.sh spustitelný skript:

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

Nastavit skript pro týdenní úlohy

Spuštěním následujícího příkazu vytvořte soubor skriptu pro týdenní úlohy a otevřete jej v textovém editoru:

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

Chcete-li každý týden spouštět každý kontejner a všechny skripty uložené uvnitř, vložte následující skript:

    #!/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

Spusťte následující příkaz a vytvořte weekly.sh spustitelný skript:

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

Přidat skripty do souboru crontab

Soubor crontab obsahuje seznam příkazů, které mají být spouštěny v určených časech. K úpravě souboru crontab použijte následující příkaz:

    [user@server ~]$ sudo crontab -e

Každý řádek v souboru crontab má pět polí data a času v následujícím formátu:

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

Pokud chcete skript spustit několikrát za časovou jednotku, můžete použít formát */n , kde n je počet, kolikrát chcete skript spustit.

Přidejte do souboru crontab následující položky:

    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

Pomocí karty Zpětná vazba můžete přidat komentáře nebo položit otázky. Můžete také [s námi zahájit konverzaci](https://www.rackspace.com/contact).
Linux
  1. Cron Job:Komplexní průvodce pro začátečníky 2022

  2. Odstraňování problémů s úlohami Cron

  3. Nastavit Umask pro souborový systém připojený k Sshfs?

  1. Jak nastavit úlohy cron v cPanel

  2. Použití at pro jednorázové úlohy cron v Linuxu

  3. Jak nastavím výchozí přezdívku pro nová připojení irssi?

  1. Jak nastavit Cron Job v Linuxu

  2. Jak nastavit úlohu Cron v TrueNAS

  3. Jak nastavit úlohu cron, aby každou hodinu spouštěla ​​spustitelný soubor?