Как использовать команду at для планирования задачи в Linux

Как использовать команду at для планирования задачи в Linux

В качестве альтернативы планировщику заданий cron существуют разные команды, включая команду at, которая позволяет вам планировать выполнение команды один раз в заданное время без редактирования файла конфигурации.

Требование этой команды состоит в установке этой утилиты, и включении ее выполнения:

 

Затем запустите и добавьте службу at в автозагрузку.

 

Проверьте состояние at.

 

at

 

Когда atd запущен, вы можете запланировать любую команду или задачу следующим образом. Мы хотим отправить 4 ping запроса на www.google.com, когда начнется следующая минута (т.е. если сейчас 22:20:13, команда будет исполнена в 22:21:00) и отправить результат по электронной почте (-m , Требуется Postfix для отправки почты или эквивалент) пользователю, используем следующую команду:

 

at

 

Если вы решите не использовать параметр -m, команда будет выполнена, но в выводе ничего не будет напечатано. Однако вы можете использовать перенаправление вывода в файл.

Кроме того, обратите внимание, что at не только позволяет использовать следующие фиксированные времена: вот например, в полдень (12:00) и в полночь (00:00), но также и с 2-значным (с указанием часов) и 4-значным временем (часы и минуты).

 

Например

Чтобы запустить updateb в 23 часа сегодня (или завтра, если текущая дата больше 11 часов), выполните:

 

Чтобы отключить систему в 23:55 сегодня (применяются те же критерии, что и в предыдущем примере):

 

Вы также можете отсрочить выполнение на минуты, часы, дни, недели, месяцы или годы, используя знак + и указать необходимое время, как в первом примере.

Формат указание времени (спецификации времени) соответствуют стандарту POSIX.

 

Выводы

Как правило, лучше использовать at вместо планировщика заданий cron всякий раз, когда вы хотите запустить команду или выполнить задание в заданное время только один раз. Для других случаев используйте cron.

 

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University.

 

Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!

Спешите подать заявку! Группы стартуют 25 января, 26 февраля, 22 марта, 26 апреля, 24 мая, 21 июня, 26 июля, 23 августа, 20 сентября, 25 октября, 22 ноября, 20 декабря.
Что Вы получите?
  • Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
  • Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проведем вечерние онлайн-лекции на нашей платформе.
  • Согласуем с вами удобное время для практик.
  • Если хотите индивидуальный график — обсудим и реализуем.
  • Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
  • Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
А еще поможем Вам:
  • отредактировать или создать с нуля резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco, Linux LPI, кибербезопасность, DevOps / DevNet, Python, подайте заявку или получите бесплатную консультацию.

Больше похожих постов

2 комментария. Оставить новый

  • Василий
    5 марта 2019 14:56

    У меня на Linux Mint 19 при выполнении команды:
    sudo echo “reboot” | at -m now +1 minute
    или
    sudo echo “shutdown -h now” | at -m now +1 minute
    через минуту ничего не происходит.
    Подскажите, почему?

    Ответить

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения

Поиск по сайту
Лучшее
Популярное
Рубрики
Меню