Jak w Linux ustawić w konsoli cykliczne wywoływanie komendy – CRON
CRON jest to potężne narzędzie dzięki któremu możemy zautomatyzować działanie naszego komputera. Jeśli jest to np. serwer, maszyna techniczna, produkcyjna – jesteśmy bardzo łatwo w stanie ustawić cykliczne wywoływanie danej komendy w ściśle określonym czasie.
Aby wylistować już zaplanowane zadania na danej maszynie wywołaj:
crontab -l
Jeśli na dole tego pliku nie widzisz żadnych od-komentowanych wpisów (bez symbolu hasha „#” na początku linii) – nic nie jest zaplanowane.
Jeśli chcesz coś dodać do listy wywołaj:
crontab -e
W tym momencie plik jest możliwy do edycji (wybierz edytor Nano do jego edytowania, lub każdy inny), a zapisać go możesz poprzez CTRL + o (dla edytora Nano)
Aby dodać nowe zdarzenie cykliczne na samym dole umieść wpis postaci:
5 * * * * {KOMENDA}
Spowoduje to wywołanie zdarzenia {KOMENDA} (np. spakowanie określonego pliku albo pobranie go przez wget itd. itd) w każdej 5 minucie każdej godziny każdego dnia miesiąca itd.
Ogólnie każda z 5-ciu gwiazdek (powyżej w miejscu 1-wszej gwiazdki umieszczono cyfrę 5) oznacza osobny zakres czasu:
1-sza kolumna (zakres 0-59) oznacza minuty.
2-ga kolumna (zakres 0-23) oznacza godzinę.
3-cia kolumna (zakres 0-31) oznacza dzień miesiąca.
4-ta kolumna (zakres 0-12) oznacza miesiąc. (0 i 1 to styczeń)
5-ta kolumna (zakres 0-7) oznacza dzień tygodnia (0 i 7 to niedziela)
6-ta kolumna określa komendę jaka powinna zostać wykonana dla danego wiersza.
(źródło: http://pl.docs.pld-linux.org/uslugi_cron.html)
Czyli np. poniższy zapis odpali zadanie o 2:15 każdego dnia:
15 2 * * * {KOMENDA}
Ten natomiast uruchomi komendę zawsze 5-go dnia miesiąca o 7:30
30 7 5 * * {KOMENDA}
Istnieją także użyteczne sformułowania pozwalające na odpalanie komendy np. co 5 minut, co drugi dzień itd.
Dekarując wpis w ten sposób – komenda ruszy co każde 5 min:
*/5 * * * * {KOMENDA}
Natomiast tutaj komenda ruszy co 2-gą godzinę o minucie 0 czyli co 2-gą „pełną” godzinę
0 */2 * * * {KOMENDA}
Analogicznie poniższy wpis spowoduje, że komenda ruszy co 2 godziny o 30-tej minucie
30 */2 * * * {KOMENDA}
Czyli jak widzimy możliwość konfiguracji jest olbrzymia.
grafika: wallpaperaccess.com

