Есть ли способ создать запись cron с помощью bash, где пользователю нужно только ввести команду для выполнения, а скрипт сделает все остальное.
Создайте файл cron, если он еще не создан. Установите время выполнения.
Спасибо, чтобы исследовать.
Есть ли способ создать запись cron с помощью bash, где пользователю нужно только ввести команду для выполнения, а скрипт сделает все остальное.
Создайте файл cron, если он еще не создан. Установите время выполнения.
Спасибо, чтобы исследовать.
Вы могли бы сделать:
crontab -l > ./my.cron
: manipulate ./my.cron somehow without editing
crontab ./my.cron
Я не знаю инструмента, который является "мастером" для создания записей cron.
Если ваш вопрос действительно касается использования nano, тогда установите переменную окружения VISUAL
в предпочитаемый вами редактор.
Я не понимаю, что вы хотите. Обычный способ создания crontab - запустить crontab -e
. Затем пользователю «нужно только ввести команду для выполнения, а скрипт сделает все остальное». Все, что нужно сделать пользователю, это установить время и команду для запуска. Как это может быть проще?
Невозможно, чтобы cron
установил время автоматически, как он может знать, когда вы хотите выполнить команду? Вы хотите создать crontab со временем по умолчанию ?
Если это так, вы можете сделать что-то вроде этого:
#!/usr/bin/env bash
time="0 5 * * 1" ## 5 a.m every week
read -p "Enter the command you wish cron to run:" comm
file=`mktemp` && echo "$time $comm" > $file && crontab $file && rm $file
Вы можете сохранить это как, например, /usr/local/bin/make_crontab.sh
.
В качестве альтернативы, если все, что вам нужно, это не использовать nano
, измените переменную $EDITOR
. Лично я использую emacs
поэтому у меня есть эта строка в моем .bashrc
:
export EDITOR='/usr/bin/emacs';