Jak uruchomić aplikację co 30 minut?

6

Mam aplikację, która pobiera niektóre kanały. Czy jest jakiś sposób, aby zrobić to co 30 minut?

(Nie zainstalowałem graficznego pulpitu, więc poprawka terminala byłaby miła: D)

Jason94
źródło

Odpowiedzi:

11

Użyj swojego crontab:

crontab -e

Następnie wprowadź linię w następujący sposób

*/30 * * * * /path/to/your/command

Zapisz go i powinien działać co 30 minut co godzinę, każdego dnia.

Zaktualizowano 30-minutową część, była zbyt szybka. Dzięki @nicolas, masz +1.

slhck
źródło
kiedy wpisuję crontab -e, czy mam otworzyć plik /tmp/crontab.DYFYJ1 ”?
Jason94
Tak, to normalne zachowanie. The crontab polecenie zajmie się tym. Od manpage: „Po wyjściu z edytora zmodyfikowany crontab zostanie zainstalowany automatycznie.”
slhck
czy istnieje sposób na przetestowanie crontab?
Jason94
Połączenie crontab -l aby wyświetlić listę bieżących wpisów crontab.
slhck
@ Jason94: Aby przetestować crontabs, zwykle kopiuję wpis i edytuję czas, który ma być uruchomiony w następnej minucie.
Zan Lynx
7

Cron brzmi jak to, czego szukasz.

Zaloguj się jako użytkownik, dla którego zadanie ma być uruchamiane, a następnie wpisz „crontab -e”

Otworzy się Twój ulubiony edytor, a otrzymasz plik w tym formacie:

    # m h  dom mon dow   command

Aby uruchomić program „/ home / for / my program” co 30 minut, należy dodać tę linię

    */30  *  * * * /home/foo/my_program > /dev/null

/ dev / null jest tam, więc nie otrzymujesz wyjścia wysyłanego pocztą, jeśli twój program zapisuje coś na standardowe wyjście.

Nicolas
źródło
5
Nawiasem mówiąc * / 30 oznacza co 30 minut, podczas gdy 30 oznacza „za każdym razem, gdy zegar uderza 30 minut (0h30, 1h30, 2h30 ...), co spowoduje, że zadanie będzie uruchamiane co godzinę, a nie co 30 minut.
Nicolas
1

To brzmi dokładnie jak zadanie dla crona. To jest dobry jak go używać, tak to jest dla ubuntu i używasz fedory, ale o ile mi wiadomo, nie ma żadnych różnic między cronami.

Phil
źródło
1

Posługiwać się cron uruchamiać go okresowo.

Z konta użytkownika, którego chcesz uruchomić skrypt:

crontab -e

Następnie dodaj nową linię w następujący sposób:

*/30 * * * *  <path/to/script>

Następnie zapisz plik crontab, który automatycznie go zainstaluje. Zadanie będzie następnie uruchamiane co 30 minut i wysyłane pocztą e-mail.

Ignacio Vazquez-Abrams
źródło