Овај чланак ће објаснити задатке распоређивања и покретање скрипти у редовним интервалима помоћу црон послова.
Шта је Црон?
Црон је програм за планирање задатака који се извршава у позадини као процес. Може се користити за повремено покретање одређених послова који су распоређени користећи његов унапред дефинисани скуп правила. Црон долази прединсталиран на већину Линук дистрибуција или доступан у спремиштима за ручну инсталацију.
Црон Пресетс
Црон на Убунту долази са сетом унапред дефинисаних планера. Можете их проверити покретањем наредбе испод:
$ лс / етц / црон.*Обично су ове фасцикле „/ етц / црон.сатно “,„ / етц / црон.дневно ”,“ / етц / црон.месечно ”и„ / етц / црон.недељно ”.
Само ставите жељене скрипте у једну од ових мапа да бисте извршавали аутоматизоване задатке сатно, дневно, месечно или недељно.
Имајте на уму да црон подразумевано користи љуску „/ бин / сх“. Ако желите да користите „/ бин / басх“ као љуску у црон скриптама, морате да користите „!# / бин / басх ”хасхбанг на врху датотеке скрипте или дефинишите љуску као променљиву„ СХЕЛЛ = / бин / басх ”у првом реду заказаног басх скрипта. Замена променљиве окружења „СХЕЛЛ“ такође ради за цронтаб едитор објашњен у наставку.
Не могу све променљиве системског окружења бити изложене хрон задацима. Зато је генерално добра идеја ручно дефинисати важне променљиве окружења у скрипти коју је заказао црон.
Цронтаб
Цронтаб вам омогућава да дефинишете сопствене планиране задатке. Помоћу ње можете да конфигуришете црон распореде који се разликују од четири стандардне црон унапред дефинисане поставке.
Да бисте поставили планирани задатак у цронтаб, прво покрените уређивач цронтаб помоћу наредбе доле:
$ цронтаб -еСада на крају датотеке можете додати унос у следећем формату:
минута сат дан месец радни дан / цео / пут / до / скрипте.схГде:
- минут: било која вредност у опсегу од 0 до 59
- сат: било која вредност у опсегу 0 до 23, 0 је поноћ
- дан: било која вредност у опсегу од 1 до 31
- месец: било која вредност у опсегу од 1 до 12
- радним даном: било која вредност у опсегу 0 до 6, 0 је недеља
Доле наведени унос цронтаб направиће снимак екрана радне површине и сачуваће га у вашем матичном директоријуму 2. марта у 15:13 сати, плус сваког уторка у марту у 15:13 сати.
13 15 2 3 2 скротДа бисте пописали све уносе у цронтаб, користите наредбу испод:
$ цронтаб -лЈош примера
Црон задатке можете најбоље објаснити кроз примере, па су у наставку примери који ће повремено правити снимке екрана радне површине и чувати их у матичној фасцикли.
Поред пет променљивих распореда, црон такође користи неке посебне низове за планирање послова. Ови низови су:
- @хоурли: посао се изводи сваки сат
- @даили / @миднигхт: посао се покреће сваки дан
- @ недељно: посао траје једном недељно
- @монтхли: посао траје једном месечно
- @године / @ручно: посао се обавља једном годишње
- @ребоот: посао се покреће једном приликом сваког поновног покретања / пријављивања
Доле наведени унос цронтаб снимаће снимак екрана једном приликом сваког поновног покретања:
@ребоот скротМожете да замените „@ребоот“ било којим другим горе поменутим посебним стринговима.
Употреба звездице или заменљивог знака уместо било које од пет променљивих поновит ће посао на свим новим инстанцама те варијабле. Унос испод ће снимити снимак екрана сваког минута:
* * * * * СкротСваки сат:
0 * * * * скротСваког дана у 18:00 сати:
0 18 * * * скротСваког месеца 6. у 18:00 сати:
0 18 6 * * скротКористите „/“ за покретање скрипте у фиксном периодичном интервалу од 30 минута (покреће се сваких 30 минута):
* / 30 * * * * скротВаријабле одвојене зарезом можете користити за дефинисање понављања извршавања скрипте у редовним интервалима. Следећи пример ће снимити снимак екрана радне површине сваког 1., 4. и 5. минута новог сата.
1,4,5 * * * * скротПровера уноса у Цронтаб
Дефинисање уноса у цронтаб-у може бити незгодно, али отклањање грешака или провера да ли раде на тачним временским ознакама је још сложеније. Једна од могућности је употреба виртуелне машине и евидентирање временских ознака скрипте која се периодично изводи на црон послу тако што укључује нешто попут наредбе „дате“ и преусмерава излаз у текстуалну датотеку. Међутим, боље решење је коришћење једне од бројних услуга за тестирање црон послова на мрежи доступних на Интернету. Препоручујем да дате веб локацију црон тестер овде покушај.
Закључак
Покретање црон послова је одличан начин за аутоматизацију поновљених задатака, посебно на серверима. Алат је изузетно моћан и прилагодљив. Међутим, важно је утврдити да ваша дефиниција планера ради исправно, посебно ако постоје задаци критични за мисију.