Útmutató a Cron kifejezésekhez
1. Áttekintés
Egyszerűen fogalmazva, a cron egy alapvető segédprogram, amely Unix alapú rendszereken érhető el. Lehetővé teszi a felhasználók számára a feladatok ütemezésének ütemezését egy meghatározott dátumon / időpontban. És természetesen remek eszköz sok olyan folyamat futtatásához, amelyek egyébként emberi beavatkozást igényelnek.
A Cron démon folyamatként fut - ez azt jelenti, hogy csak egyszer kell elindítani, és továbbra is a háttérben fut. Ez a folyamat a crontab az ütemtervek bejegyzéseinek elolvasása és a feladatok elindítása.
Túlóra, a cron kifejezés formátuma széles körben elfogadottá vált és sok más program és könyvtár használja.
2. Munka Crontab
A cron Az ütemezés egy egyszerű szöveges fájl, amely a / var / spool / cron / crontabs Linux rendszereken. Nem szerkeszthetjük a crontab fájlokat közvetlenül; a. használatával kell elérnünk crontab parancs.
Például nyitni crontab fájlt, ki kell indítanunk ezt a parancsot:
crontab -e
Minden sor be crontab egy kifejezés és egy parancs futtatásához:
* * * * * /usr/local/ispconfig/server/server.sh
Ez a bejegyzés minden percben futtatja az említett szkriptet.
3. Cron kifejezés
Értsük meg a cron kifejezés; öt mezőből áll:
3.1. Akciós karakterek kifejezésben
- * (minden) - meghatározza, hogy az eseménynek minden időegységre meg kell történnie. Például, “*” a <perc> mező - jelentése "minden percre"
- ? (Bármi) - hasznosítják a <hónap napja> és <hét napja>mezők az önkényes érték jelölésére - a mező értékét hanyagolja el. Például, ha egy forgatókönyvet „minden hónap 5. napján” akarunk elindítani, függetlenül attól, hogy a hét napja melyik napra esik, akkor megad?”A <hét napja> terület
- - (hatótávolság) - meghatározza az értéktartományt. Például, "10-11" ban ben a mező jelentése „10. és 11. óra”
- , (értékek) - több értéket határoz meg. Például, "HÉT, SZÜN, FRI ” a <hét napja> a mező jelentése a „hétfő, szerda és péntek” napokon
- / (növekményekkel) - meghatározza az inkrementális értékeket. Például a “5/15” a <perc>mező, jelentése: „5, 20, 35 és 50 perc óra”
- L (utolsó) - különböző területeken használva különböző jelentése van. Például, ha a <hónap napja>mező, akkor ez a hónap utolsó napját jelenti, azaz „január 31.” és így tovább a naptári hónap szerint. Offszet értékkel használható, például:L-3“, Amely a„ naptári hónap harmadik – utolsó napja ”jelölést jelenti. A <hét napja>, meghatározza a „hét utolsó napját”. A <értékben egy másik értékkel is használhatóhét napja>, mint "6L„, Amely a„ múlt pénteket ”jelöli
- W (hétköznap) - meghatározza a hónap adott napjához legközelebb eső hétfőt (hétfőtől péntekig). Például, ha megadjuk a10W”A <hónap napja>mező, akkor ez azt jelenti, hogy „az adott hónap 10. napjához közeli hétköznap”. Tehát, ha a „10.” szombat, akkor a feladat „9-én” indul, és ha a „10.” vasárnap, akkor a „11-én” vált ki. Ha megadjuk a1W”A <hónap napja> és ha az „1.” szombat, akkor a munka „3.-án”, azaz hétfőn indul, és nem ugrik vissza az előző hónapra
- # - meghatározza aNa hónap egy hétköznapjának előfordulása, például a „hónap 3. péntekje” jelölhető „6#3“
3.2. Cron kifejezési példák
Lássunk néhány példát cron kifejezés a mezők és a speciális karakterkombinációk használatával:
Minden nap 12: 00-kor (délben):
0 12 * * ?
5 percenként minden nap 13 órakor és 13:55 órakor, majd 18 órakor és 18:55 órakor kezdődik minden nap:
0/5 13,18 * * ?
Minden nap 13 órakor kezdődő és 13:05 órakor kezdődő naponta:
0-5 13 * * ?
Júniusban minden kedden 13:15 és 13:45 órakor:
15,45 13? 6 kedd
Minden hétfőn, kedden, szerdán, csütörtökön és pénteken 9: 30-kor:
30 9? * HÉT-FRI
Minden hónap 15. napján 9: 30-kor:
30 9 15 * ?
Minden hónap utolsó napján 18 órakor:
0 18 L *?
Minden hónap 3–3. Napján 18 órakor:
0 18 L-3 *?
Minden hónap utolsó csütörtökén 10: 30-kor:
30 10? * 5L
Minden hónap harmadik hétfőjén 10 órakor:
0 10 ? * 2#3
Minden nap 12 órakor, minden nap öt napig, a hónap 10. napjától kezdve:
0 0 10/5 * ?
4. Cron speciális húrok
A cron kifejezésben megadott mezők mellett támogat néhány speciális, előre definiált értéket is - amelyeket a mezők helyett használhatunk:
- @reboot- futtassa egyszer az induláskor
- @évi vagy @ évente - évente egyszer fut
- @havi- fut havonta egyszer
- @heti- futás hetente egyszer
- @napivagy @éjfél- fuss naponta egyszer
- @óránkénti- óránként futni
5. Következtetés
Ebben a gyors cikkben a cron munkahelyek és crontab.
Számos olyan kifejezési példát is láthattunk, amelyeket felhasználhatunk mindennapi munkánk során, vagy egyszerűen más kifejezésekre következtethetünk.