Uruchamianie zadania cron w systemie Linux co sześć godzin


Odpowiedzi:


323

Zapomniałeś o jednym *, a masz za dużo pól. To godzina, o którą musisz się troszczyć

0 */6 * * * /path/to/mycommand

Oznacza to, że co szósta godzina zaczynając od 0, czyli w godzinie 0, 6, 12 i 18, którą można by zapisać jako

0 0,6,12,18 * * * /path/to/mycommand

dziękuję za odpowiedź, co 6 godzin zaczynając o której godzinie? czas tworzenia crona?
Gandalf StormCrow,

dzięki, więc gdybym chciał uruchamiać go od 15:00 co 6 godzin to by tak było 15 15,23,05,11 * * * /path/to/mycommand?
Gandalf StormCrow,

5
Tak, chociaż pierwsze pole to minuta, którą ustawiłeś na 15, więc będzie to oznaczać 15: 15,23: 15,05: 15 i 11:15. (co przy okazji nie co 6 godzin 0 15,21,3,9 * * *)
nr

6

Powinieneś dołączyć ścieżkę do swojego polecenia, ponieważ cron działa w mocno ograniczonym środowisku. Nie będziesz mieć wszystkich zmiennych środowiskowych, które masz w swojej interaktywnej sesji powłoki.

Dobrym pomysłem jest określenie bezwzględnej ścieżki do skryptu / pliku binarnego lub zdefiniowanie PATH w samej tabeli crontab. Aby pomóc w debugowaniu wszelkich problemów, przekierowałbym również stdout / err do pliku dziennika.


1
dzięki za odpowiedź, ale jeśli zadeklaruję zmienne środowiskowe w moim pliku sh, tak jak export variable=somethingmogę nadal używać ich w tym samym skrypcie? i często używam polecenia daty w skrypcie
Gandalf StormCrow

@Gandalf - Tak. Możesz zdefiniować wszystkie zmienne env w skrypcie. To dobry pomysł, ponieważ oznacza to, że skrypt jest samodzielna i odizolowany od innych rzeczy może chcesz uruchomić crona
Brian Agnew

5
0 */6 * * * command

To będzie doskonały sposób na powiedzenie 6 godzin dziennie.

Twoje polecenie trwa sześć minut!


2
@ArsenArsen Jestem prawie pewien, że to dlatego, że tak naprawdę nie dodaje niczego do istniejącej zaakceptowanej odpowiedzi, napisanej 4 lata wcześniej.
Adinia

2

Zwróć uwagę na tę składnię :

* */6 * * *

Oznacza to 60 razy (co minutę) co 6 godzin,

nie

raz na 6 godzin.




-2

Próbować:

0 */6 * * * command

. * musi


1
Ostatnia linijka tutaj nie ma większego sensu. Czy rozważyłbyś jego rozszerzenie?
halfer

1
wygląda na to, że odpowiedź jest niekompletna
ajayramesh
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.