Crontab без crontab -e
Я хотел бы добавить расписание crontab, выполнив это на моем сервере:
echo "30 * * * * / home / my / var / dir / to / script / var / etc / etc / etc /"> crontab -e
Есть ли способ сделать это, не выполняя crontab -e, а затем вводя команду?
5 ответов
Мог бы попробовать
1)nano /etc/crontab (or any other editor, e.g. emacs)
2)echo "30 * * * * /home/my/var/dir/to/script /var/etc/etc/etc/" > /etc/crontab
3)or put the contents of this into a file, then do "file > /etc/crontab"
Как корень:
echo "30 * * * * /home/my/var/dir/to/script /var/etc/etc/etc/" > /var/spool/cron/crontabs/username
Правильное исправление, вероятно, заключается в использовании файла, указанного в /questions/45292600/ispolzovat-php-dlya-sozdaniya-redaktirovaniya-i-udaleniya-zadanij-crontab/45292719#45292719, но его можно использовать tee
добавить строку в crontab, например:
echo "* * * * * ls" | EDITOR="tee -a" crontab -e
tee -a
добавит stdin
к файлу, который он получает, EDITOR
переменная говорит crontab
использовать tee -a
как редактор.
Если у вас есть весь crontab в текстовом файле, вы можете загрузить весь crontab, чтобы заменить старый crontab, выполнив:
cat <crontab_text_file> | crontab -
Это уничтожит ваш старый crontab. Использование '-' позволяет использовать стандартный ввод в crontab.
У нас есть следующая установка в RHEL: - специальное программное обеспечение, запускающее sh в init.d, которое - обрабатывает запуск, остановку, перезагрузку cron - записывает задачи cron в отдельный файл tmp и загружает этот файл с помощью crontab -e
Я только поддерживаю это в течение нескольких месяцев, но это работает как очарование...