Cron Zeitproblem

  • Hab einige Cron Skripte welche bei mir das Backup durchführen.
    Allerdings funktioniert das nicht so wie ich mir gedacht habe. Hier der Code mit der Beschreibung dazu:


    Code
    1. 0 17 * * 1 --> Wöchentlich am Montag
    2. 0 17 1-7 * 4 --> Monatlich am Donnerstag, An den Tagen 1-7
    3. 0 18 * * 2,4,6 --> Täglich am Dienstag, Donnerstag und Samstag
    4. 0 18 8-14,22-28 * 1 --> Wöchentlich am Montag, An den Tagen 8-14 und 22-28
    5. 0 18 1-7 3,5,9,11 1 --> Monatlich am Montag, An den Tagen 1-7, Monat März, Mai, september und november
    6. 0 18 1-7 1,7 1 --> Halbjährlich am Montag, An den Tagen 1-7, Monat Januar und Juli


    Wesshalb aber wurde der 2. Crontab am Sonntag 3.4.2012 ausgeführt?? Der sollte doch nur am Donnerstag laufen? Hab ich was übersehen?

    I survived RS.COM downtime 01/2008, and all I got was this lousy Signature

  • Zitat

    Original von Solae

    Code
    1. 0 17 1-7 * 4 --> Monatlich am Donnerstag, An den Tagen 1-7


    Wesshalb aber wurde der 2. Crontab am Sonntag 3.4.2012 ausgeführt?? Der sollte doch nur am Donnerstag laufen? Hab ich was übersehen?


    Ich lese dir mal vor, was du da geschrieben hast:


    Jeweils um 17:00, jeden Donnerstag sowie am 1., 2., 3., 4., 5., 6. und 7. jedes Monats. Hier die Syntax, die hilft meistens recht gut weiter



    * * * * * command to be executed
    - - - - -
    | | | | |
    | | | | +----- day of week (0 - 6) (Sunday=0)
    | | | +------- month (1 - 12)
    | | +--------- day of month (1 - 31)
    | +----------- hour (0 - 23)
    +------------- min (0 - 59)


    Wenn du es wirklich nur jeden ersten Donnerstag des Monats machen musst, dann kannst du es nicht mit dieser Syntax lösen. Der Check des Wochentages muss im aufrufenden Befehl erfolgen. Der Herr Google weiss da viele Lösungen, ich würde es irgendwie so versuchen:
    0 17 1-7 * * [ "$(date '+\%a')" == "Thu" ] && /dein/script.sh

    Einmal editiert, zuletzt von GP ()

  • In dem falle muss nicht alles übereinstimmen? bzw. der Wochentag wird nicht zusammen mit den Tagen einbezogen?

    I survived RS.COM downtime 01/2008, and all I got was this lousy Signature

  • Ach so, dann ist klar. Steht das irgendwo? Wundere mich, dass ich das nirgends gelesen habe...


    edit: habs jetzt grad auf einer Website gelsen :P

    I survived RS.COM downtime 01/2008, and all I got was this lousy Signature

    2 Mal editiert, zuletzt von solae ()