GNU/Linux >> Znalost Linux >  >> Linux

Syntaxe Crontab Day of the Week

    :-) Sunday    |    0  ->  Sun
                  |  
        Monday    |    1  ->  Mon
       Tuesday    |    2  ->  Tue
     Wednesday    |    3  ->  Wed
      Thursday    |    4  ->  Thu
        Friday    |    5  ->  Fri
      Saturday    |    6  ->  Sat
                  |  
    :-) Sunday    |    7  ->  Sun

Jak můžete vidět výše a jak již bylo řečeno, čísla 0 a 7 jsou oba přiděleni na neděli. Jsou zde uvedeny i anglické zkrácené dny v týdnu, které lze také použít v crontab.

Příklady použití čísla nebo zkratky

15 09 * * 5,6,0             command
15 09 * * 5,6,7             command
15 09 * * 5-7               command
15 09 * * Fri,Sat,Sun       command

Čtyři příklady dělají totéž a provádějí příkaz každý pátek, sobotu a neděli v 9:15.

Podrobně

Má dvě čísla 0 a 7 pro neděli může být užitečné pro psaní rozsahů dnů v týdnu začínajících 0 nebo končící 7 . Můžete tedy psát rozsahy začínající nedělí nebo končící touto nedělí, například 0-2 nebo 5-7 například (rozsahy musí začínat nižším číslem a musí končit vyšším číslem). Zkratky nelze použít k definování rozsahu dnů v týdnu.


Můžete také použít názvy dnů jako Mon na pondělí Tue na úterý atd. Je to lidštější.


0 a 7 obě znamenají neděli, můžete použít tu, kterou chcete, takže psaní 0-6 nebo 1-7 má stejný výsledek.

Také, jak navrhuje @Henrik, je možné nahradit čísla zkráceným názvem dnů, například MON , THU atd.:

0 - Sun      Sunday
1 - Mon      Monday
2 - Tue      Tuesday
3 - Wed      Wednesday
4 - Thu      Thursday
5 - Fri      Friday
6 - Sat      Saturday
7 - Sun      Sunday

Graficky * * * * * command to be executed znamená:

minuta hodina den v měsíci měsíc den v týdnu
(0–59) (0-23) (1-31) (1-12) (1-7)
* * * * * příkaz, který se má provést

Nebo pomocí starého stylu:

 ┌────────── minute (0 - 59)
 │ ┌──────── hour (0 - 23)
 │ │ ┌────── day of month (1 - 31)
 │ │ │ ┌──── month (1 - 12)
 │ │ │ │ ┌── day of week (0 - 6 => Sunday - Saturday, or
 │ │ │ │ │                1 - 7 => Monday - Sunday)
 ↓ ↓ ↓ ↓ ↓
 * * * * * command to be executed

Nakonec, pokud chcete určit den po dni, můžete dny oddělit čárkami, například SUN,MON,THU příkaz provede pouze v neděli, pondělí ve čtvrtek.

Další podrobnosti si můžete přečíst v článku Wikipedie o Cron a zkontrolovat výraz cron online na crontab.guru.


Linux
  1. Příkaz Linux AWK – Příklady syntaxe použití Linuxu a Unixu

  2. Náhodně zadaný Crontab s Just The Dash?

  3. Crontab po hodině?

  1. Příběhy Linuxu:Když zálohy zachránily den

  2. Jak přimět CRON, aby volal na správné PATH

  3. Jak dostanu sar, aby se ukázal za předchozí den?

  1. Crontab Log:Jak protokolovat výstup mého skriptu Cron

  2. Jak spustit úlohu cronu v určité dny v týdnu

  3. Jak spustit crontab job každý týden v neděli