Laufen alle 10 Minuten cron

16

Ich habe ein Python-Skript auf meinem Desktop: /home/ceasor/Desktop/script.py

In /etc/crontabschrieb ich:

0 */2   * * *   ceasor    sudo python  /home/ceasor/Desktop/script.py

Das Python-Skript wird nicht ausgeführt. Wie starte ich alle 10 Minuten cron?

Eric Leschinski
quelle
2
Warum rufst du an sudo python? Wenn Sie es als root ausführen möchten, geben Sie einfach diesen Benutzer in Ihrem an crontab. Bedeutet auch 0 */2alle 2 Stunden, nicht alle 10 Minuten.
Joachim Sauer
Es ist auf Ihrem Desktop? Dann haben Sie den falschen Weg in Ihrer Crontab
Ocaso Protal
1
Kann dein Account sudo ohne Passwort ausführen? Ist Python in dem Pfad, den Cron sieht? auch das sagt crontab schon mal 2 stunden. Wenn Sie alle 10 Minuten möchten, verwenden Sie * / 10 * * * *
Doon

Antworten:

25

Ihre Leitung läuft alle zwei Stunden um 0 Minuten (dh 00:00, 02:00, 04:00 usw.).

Wenn Sie alle 10 Minuten etwas ausführen möchten:

*/10 * * * *  ceasor    sudo python  /home/ceasor/Desktop/script.py

Ich habe mir erlaubt, den falschen Weg zu korrigieren.

FYI, das sind die Bedeutungen der Werte:

         field          allowed values
          -----          --------------
          minute         0-59
          hour           0-23
          day of month   1-31
          month          1-12 (or names, see below)
          day of week    0-7 (0 or 7 is Sun, or use names)
          username       any user from the system
          command        the command you want to run

Und wenn du etwas als root ausführen willst, solltest du rootanstelle des ceasorBenutzernamens das setzen und löschen sudo.

krtek
quelle
13

Führen Sie alle 10 Minuten einen Befehl aus:

*/10 * * * *   ceasor    sudo python  /home/ceasor/script.py

Der */10Token löst den Cronjob alle 10 Minuten aus.

Sie können auch jede Minute auflisten, die ausgelöst werden soll:

0,10,20,30,40,50 * * * * sudo python /home/ceasor/Desktop/script.py
kradmiy
quelle
4

Um alle zehn Minuten etwas auszuführen, füge ich normalerweise Folgendes in meine Crontab ein:

0,10,20,30,40,50 * * * * sudo python /home/ceasor/Desktop/script.py

Stellen Sie die 0,10,20, ... so ein, dass Sie die Minuten der gewünschten Stunde erreichen.

GreenMatt
quelle
Sie können * / 10 anstelle der Aufzählung verwenden,
krtek
1
@Krtek: Ja, das wurde in anderen Antworten angegeben. Beides funktioniert, und ich dachte, es wäre gut, das OP auf Alternativen aufmerksam zu machen.
GreenMatt
3

Für alle zehn Minuten, die Sie brauchen

  */10 * * * *     ceasor         sudo python /home/ceasor/Desktop/script.py

und wenn sich das Skript in befindet Desktop/, müssen Sie diesen Pfad wie in meinem Beispiel hier verwenden.

Dirk Eddelbüttel
quelle