Crontab: Как да автоматизирате своите задачи в UNIX
Crontab е мощен инструмент в UNIX и UNIX-подобни операционни системи, който позволява на потребителите да планират и автоматизират изпълнението на команди или скриптове в определени интервали от време. Тази статия ще предостави подробна информация за crontab и ще ви научи как да го използвате за улеснение на вашите рутинни задачи.
Какво е crontab?
Crontab е съкращение от „cron table„, където „cron“ е програма в UNIX-базирани системи, която работи като планиращ демон. Той изпълнява команди или скриптове периодично на зададени времеви интервали. Той съхранява списък със задачи и техните изпълними команди, които трябва да се стартират в определено време.
Как да използваме crontab?
Отворете терминал
За да използвате crontab, отворете терминал или команден ред на вашия UNIX-базиран компютър. Това може да бъде Terminal на macOS или команден ред на Linux.
Въведете командата crontab -e
С командата „crontab -e“ ще отворите текущия си cron файл в текстов редактор. Ако все още не сте задавали задачи чрез crontab, новият файл ще бъде създаден и ще бъдете насочени към избор на редактор.
Добавете задачи в crontab
Вече сте в редактора на crontab. За да добавите задача, напишете нов ред и използвайте следния формат:
минута час ден от месеца месец ден от седмицата команда
┌──────────── [по избор] секунди (0 - 59) | ┌─────────── минута (0 - 59) | | ┌──────── час (0 - 23) | | | ┌────── ден от месеца (1 - 31) | | | | ┌──── месец (1 - 12) ИЛИ януари, фев, март, април ... | | | | | ┌── ден от седмицата (0 - 6, неделя=0) ИЛИ слънце, пн ... | | | | | | * * * * * * команда
Символ | Значение | Пример | Еквивалентен |
---|---|---|---|
* | Всяка стойност | * * * * | Всяка минута |
– | Диапазон от стойности | 1-10 * * * | Минути от 1 до 10 |
, | Списък със стойности | 1,10 * * * | На 1 и 10 минути |
/ | Стойности на стъпките | */10 * * * | На всеки 10 минути |
@годишно | Веднъж всяка година в полунощ на 1 януари | @yearly | 0 0 1 1 * |
@годишно | Същото като @годишно | @annually | 0 0 1 1 * |
@месечно | Веднъж месечно в полунощ на първия ден | @monthly | 0 0 1 * * |
@седмично | Веднъж седмично в полунощ в неделя сутрин | @weekly | 0 0 * * 0 |
@ежедневно | Веднъж на ден в полунощ | @daily | 0 0 * * * |
@полунощ | Същото като @daily | @midnight | 0 0 * * * |
@почасово | Веднъж на час в началото на часа | @hourly | 0 * * * * |
@рестартиране | Изпълнение при стартиране |
Пример:
30 8 * * * /път/до/вашия/скрипт.sh
Този примерен ред ще стартира вашия скрипт.sh всеки ден в 8:30 часа.
Полезни команди
crontab -l : Показва текущото съдържание на crontab файла за текущия потребител.
crontab -e : Отваря редактор за редактиране на текущия crontab файла на потребителя. Ако такъв не съществува, се създава нов.
crontab -r : Премахва текущия crontab файл на потребителя, изтривайки всички настройки на задачите.
service cron start : Стартира Cron демона на Linux системи. Важно е да имате администраторски права за да изпълните тази команда.
service cron stop : Спира Cron демона на Linux системи. Изискват се администраторски права.
service cron restart : Рестартира Cron демона на Linux системи. Изискват се администраторски права.
Тези команди са полезни при управлението на Cron задачите и при отстраняване на проблеми, свързани с автоматизацията на задачите във вашата система. Винаги бъдете внимателни при работа с Cron и проверявайте редовно журналите, за да следите активността и да откривате евентуални проблеми.
Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу:
Donate ☕️ Дарете с PayPalDonate 💳 Дарете с Revolut