Etichetate sub. bash. Ubuntu. script-uri
Uneori, administratorii de sistem, programatorii, designerii web și mulți alții trebuie să ruleze aceleași comenzi sau script-uri cu o anumită periodicitate. În acest scop, se utilizează o utilitate specială Cron. integrat în toate distribuțiile Unix. Utilizați Cron'om extraordinar de ușor. Acum, spune-mi cum.
În primul rând, vom crea un script simplu de bash, de exemplu, un script de salvare de rezervă și de arhivare, în cazul meu, fișierele de configurare pentru serverul Apache2 și ftp.
Acest script copiază fișierele de configurare și le arhivează într-un dosar în care numele conține data și ora de salvare. O vom numi "backup-script" și va fi în directorul nostru de acasă (/ home / user /). Acum avem nevoie de acest script pentru a rula, să zicem, la fiecare 10 minute. Pentru aceasta, introduceți comanda
Cu această comandă, deschideți fișierul crontab pentru ca acest utilizator să se editeze, în cazul meu este utilizator. Dacă scriptul nostru are nevoie de drepturi de utilizator super, atunci trebuie să editați crontabul superuserului. Aceasta se face prin comandă
Dacă înlocuim rădăcina cu datele de conectare ale unui alt utilizator, îl vom edita crontab.
Scrie imediat pentru a vedea fișierul crontab introduceți comanda.
Fișierul crontab are următoarea structură:
field1 field2 field3 field4 field4 comanda
Valorile primelor cinci câmpuri sunt:
1. minute - un număr de la 0 la 59
2. ore - numărul de la 0 la 23
3. ziua lunii - un număr de la 1 la 31
4. numărul lunii anului - numărul de la 1 la 12
5. Ziua săptămânii este un număr de la 0 la 7 (0-Soare, 1-Lună, 2-Mar, 3-Mie, 4-M, 5-Vin,
Sunt necesare toate câmpurile. Nu este greu de ghicit că primele 5 sunt responsabile pentru determinarea frecvenței lansării comenzii, iar ultima este comanda reală sau calea completă spre scenariu. Astfel, pentru a rula scriptul de rezervă la fiecare 10 minute, trebuie să introduceți următoarea linie.
* - înseamnă toate opțiunile posibile, / servește pentru a determina frecvența sarcinii. Dacă trebuie să executați scriptul la fiecare 3 ore, scrieți valorile orelor * / 3 și în minute doar *, dacă o dată pe zi - introduceți * / 23. Aproape o zi. De asemenea, puteți introduce mai multe valori într-un singur câmp separat prin virgule, de exemplu, dacă doriți să executați scriptul pentru 1, 5 și 25 din fiecare lună, introduceți 1.5.25 în locul celui de-al treilea asterisc. De asemenea, puteți introduce o perioadă de timp, dacă, să zicem, în orele de intrare 12-17, scriptul va rula între 12 și 17 inclusiv o dată pe oră.
Ei bine, asta e tot, în concluzie, câteva exemple: