The crontab yra komandų, kurias norite vykdyti reguliariai, sąrašas, taip pat komandos, naudojamos šiam sąrašui tvarkyti, pavadinimas. „Crontab“ reiškia cron lentelę, nes užduotims vykdyti naudoja užduočių planavimo priemonę cron; cron pats pavadintas chronos, graikiško žodžio, reiškiančio laiką, vardu. cron yra sistemos procesas, kuris automatiškai atliks užduotis už jus pagal nustatytą tvarkaraštį. Grafikas vadinamas crontab, kuris taip pat yra programos, naudojamos tam tvarkaraščiui redaguoti, pavadinimas.
Linux Crontab sintaksė
„Linux Crontab“ formatas vaizduojamas tokia sintaksė:
MIN HOUR DOM MON DOW CMD>
Išskaidykime kiekvieną lauką:
| Laukas | apibūdinimas | Leidžiama vertė |
|---|---|---|
| MIN (minutė) | Nurodoma minutė, kada komanda bus paleista | Jis svyruoja nuo 0 iki 59. |
| VALANDA | Žymi dienos valandą, kai numatyta vykdyti komandą. | Jis svyruoja nuo 0 iki 23. |
| DOM (mėnesio diena) | Nurodo užduoties mėnesio dieną. | Jis svyruoja nuo 1 iki 31. |
| MON (mėnuo) | Nurodo mėnesį, per kurį bus vykdoma komanda. | Jis skiriasi nuo 1 iki 12. |
| DOW (savaitės diena) | Nurodo užduoties savaitės dieną. | Jį žymi skaičiai nuo 0 iki 6, kur ir 0, ir 6 atitinka sekmadienį. |
| CMD (komanda) | Nurodo tikrąją komandą arba scenarijų, kuris bus paleistas suplanuotu laiku. | —————— |
Cron darbų pavyzdžiai
1. Darbo planavimas konkrečiam laikui
Pagrindinis cron naudojimas yra atlikti darbą per tam tikrą laiką, kaip parodyta toliau. Tai atliks visos atsarginės kopijos apvalkalo scenarijų (visą atsarginę kopiją) birželio 10 d. 08:30 val. Laiko lauke naudojamas 24 valandų formatas. Taigi 8 val. naudokite 8 val., o 20 val. – 20 val.
30 08 10 06 * /home/maverick/full-backup>
30 – 30 minutė 08 – 08 val. 10 – 10 diena 06 – 6 mėnuo (birželis) * – kiekvieną savaitės dieną
2. Norėdami peržiūrėti Crontab įrašus
- Peržiūrėkite dabartinio prisijungusio vartotojo Crontab įrašus: norėdami peržiūrėti savo crontab įrašus, įveskite crontab -l iš savo unix paskyros.

- Peržiūrėkite šakninius Crontab įrašus : Prisijunkite kaip root vartotojas (su – root) ir atlikite crontab -l.

- Norėdami peržiūrėti kitų Linux vartotojų crontab įrašus: Prisijunkite prie root ir naudokite -u {username} -l.

3. Norėdami redaguoti Crontab įrašus Redaguoti dabartinio prisijungusio vartotojo Crontab įrašus.
Norėdami redaguoti crontab įrašus, naudokite crontab -e. Pagal numatytuosius nustatymus bus redaguojamas dabartinių prisijungusių vartotojų crontab. 
4. Suplanuoti užduotį kiekvienai minutei naudojant Cron.
Idealiu atveju jums nereikės planuoti darbo kiekvieną minutę. Tačiau šio pavyzdžio supratimas padės suprasti kitus pavyzdžius.
* * * * * CMD>
* reiškia visus galimus vienetus, t. y. kiekvieną kiekvienos valandos minutę per metus. Daugiau nei naudojant šį * tiesiogiai, jis bus labai naudingas šiais atvejais. Kai nurodote */5 minučių laukelyje, tai reiškia kas 5 minutes. Kai nurodote 0-10/2 minučių laukelyje, reiškia kas 2 minutes per pirmąsias 10 minučių. Taigi aukščiau pateiktas susitarimas gali būti naudojamas visiems kitiems 4 laukams.
5. Suplanuoti darbą daugiau nei vieną kartą (pvz., du kartus per dieną)
Šis scenarijus daro laipsnišką atsarginę kopiją du kartus per dieną kiekvieną dieną. Šiame pavyzdyje kiekvieną dieną 11:00 ir 16:00 vykdomas nurodytas prieauginis atsarginės kopijos apvalkalo scenarijus (prieauginis atsarginis kopijavimas). Kableliais atskirta reikšmė lauke nurodo, kad komanda turi būti vykdoma per visą nurodytą laiką.
00 11, 16 * * * /home/maverick/bin/incremental-backup>
00 – 0 minutė (valandos viršūnė) 11, 16 – 11 val. ir 16 val. * – Kiekvieną dieną * – Kiekvieną mėnesį * – Kiekvieną savaitės dieną
6. Suplanuoti darbą tam tikram laiko intervalui (pvz., Tik darbo dienomis)
Jei norite, kad darbas būtų suplanuotas kiekvieną valandą tam tikru laiko intervalu, naudokite toliau nurodytus veiksmus.
- „Cron Job“ kasdien darbo valandomis : šis pavyzdys tikrina duomenų bazės būseną kasdien (įskaitant savaitgalius) darbo valandomis 9.00–18.00 val.
00 09-18 * * * /home/maverick/bin/check-db-status>
- 00 – 0 minutė (valandos viršūnė) 09-18 – 9 val., 10 val., 11 val., 12 val., 13 val., 14 val., 15 val., 16 val., 17 val., 18 val. * – Kasdien * – Kas mėnuo * – kiekviena savaitės diena
- „Cron Job“ kiekvieną savaitės dieną darbo valandomis : šis pavyzdys tikrina duomenų bazės būseną kiekvieną savaitės dieną (t. y. neįskaitant šeštadienio ir sekmadienio) darbo valandomis nuo 9 iki 18 val.
00 09-18 * * 1-5 /home/maverick/bin/check-db-status>
- 00 – 0 minutė (valandos viršūnė) 09-18 – 9 val., 10 val., 11 val., 12 val., 13 val., 14 val., 15 val., 16 val., 17 val., 18 val. * – Kasdien * – Kas 1–5 mėnuo – pirmadienis, antradienis, trečiadienis, ketvirtadienis ir penktadienis (kiekvieną darbo dieną)
7. Suplanuoti foninę Cron užduotį kas 10 minučių.
Jei norite patikrinti vietos diske kas 10 minučių, naudokite toliau nurodytus veiksmus.
eilutės į int konvertavimas Java
*/10 * * * * /home/maverick/check-disk-space>
Jis vykdo nurodytą komandą check-disk-space kas 10 minučių per metus. Tačiau jums gali tekti reikalauti komandą vykdyti tik tam tikromis valandomis arba atvirkščiai. Aukščiau pateiktuose pavyzdžiuose parodyta, kaip tai padaryti. Užuot nurodyę reikšmes 5 laukuose, galime tai nurodyti naudodami vieną raktinį žodį, kaip nurodyta toliau. Yra ypatingų atvejų, kai vietoj pirmiau minėtų 5 laukų galite naudoti @ ir raktinį žodį, pvz., paleisti iš naujo, vidurnaktis, kasmet, valandą. Cron specialieji raktažodžiai ir jų reikšmė
Keyword Equivalent @yearly 0 0 1 1 * @daily 0 0 * * * @hourly 0 * * * * @reboot Run at startup.>
8. Suplanuokite darbą pirmai kiekvienų metų minutei naudodami @yearly
Jei norite, kad užduotis būtų atlikta pirmąją kiekvienų metų minutę, galite naudoti raktinį žodį @yearly cron, kaip parodyta toliau. Taip bus atlikta metinė sistemos priežiūra naudojant kasmetinės priežiūros apvalkalo scenarijų sausio 1 d. 00:00 val. kiekvienais metais.
@yearly /home/maverick/bin/annual-maintenance>
9. Suplanuoti Cron darbą kiekvieno mėnesio pradžioje naudojant @monthly
Jis panašus į @yearly, kaip nurodyta aukščiau. Tačiau komandą vykdo kas mėnesį, naudodamas @monthly cron raktinį žodį. Taip bus vykdoma apvalkalo scenarijaus atsarginė kopija kiekvieno mėnesio 1 dieną 00:00.
@monthly /home/maverick/bin/tape-backup>
10. Suplanuoti foninį darbą kiekvieną dieną naudojant @daily
Naudojant @daily cron raktinį žodį, kasdien 00:00 val. bus išvalytas žurnalo failas, naudojant valymo žurnalų apvalkalo scenarijų.
@daily /home/maverick/bin/cleanup-logs 'day started'>
11. Vykdyti linux komandą po kiekvieno perkrovimo naudojant @reboot
Naudojant @reboot cron raktinį žodį, nurodyta komanda bus vykdoma vieną kartą po to, kai mašina bus paleista kiekvieną kartą.
@reboot CMD>


