Подтвердить что ты не робот

Cron API: есть ли такая вещь?

Есть ли такая вещь, как Cron API?

Я имею в виду, есть ли программный способ добавления/удаления заданий Cron без перехода на носки Cron?

4b9b3361

Ответ 1

UNIX cron API - это файловая система. Существует команда crontab для установки/редактирования пользовательских crontab. Основной причиной команды crontab является принудительное ограничение безопасности для пользователей (например, /etc/cron.allow и /etc/cron.deny).

Закладки cron cron - это просто файлы, помещенные в /etc/cron.d(и cron.daily/еженедельно/ежемесячно). Никакой особый уход не требуется; просто отбросьте файл на место. Чтобы процитировать верхнюю часть /etc/crontab:

# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

Формат совпадает с пользовательским crontabs, задокументированным в crontab (5), но с полем пользователя прямо перед командой. Если SPACE означает пробел (один или несколько), и оба значения 0 и 7 означают воскресенье:

минута ПРОСТРАНСТВО час ПРОСТРАНСТВО день месяца ПРОСТРАНСТВА месяц ПРОСТРАНСТВО день недели ПРОБЕЛ КОСМИЧЕСКОЙ команды

Использование обычного доступа к файлам POSIX не будет наступать на носки cron. Помните, rename всегда будет иметь целевое имя, указывающее на старый или новый файл, ни в коем случае. Таким образом, вы можете записать файл в новое имя и затем переименовать его поверх старого.

Многие языки программирования имеют API-интерфейсы, помогающие писать crontab. Например, CPAN (Perl) имеет несколько параметров.

Ответ 3

Вы можете обязательно обернуть его. См. Whenever рубиновый камень.

Ответ 4

Если вы обращаетесь к веб-интерфейсу API, мы создали API REST, который ваше веб-приложение может использовать для запуска callbacks/webhooks. Проверьте SaturnAPI Cron. Вы делаете HTTP-запросы для планирования, просмотра и удаления заданий. Ниже приведен пример планирования задания:

curl -X POST \
  https://saturnapi.com/cron/jobs \
    -H saturnapi-access-key:'YOUR_SATURNAPI_ACCESS_KEY' \ 
    -d dateTimeUTC='2015:09:25 14:30' \
    -d dateTimeFormat='YYYY:MM:DD HH:mm' \
    -d callbackURL='https://your.verified.domain.com' \

Ответ 5

Не так, хотя скриптирование модификации с использованием crontab не так уж сложно. Такого рода вещи (работая через текстовые инструменты, а не ожидая API уровня кода для системных объектов), действительно являются частью парадигмы Unix.

Альтернативно, довольно простой "cron API" можно реализовать с помощью быстрого script на любом языке, который вы предпочитаете, и "спящем".:)