有没有办法用 bash 创建一个 cron 条目,用户只需输入要执行的命令,脚本就会完成剩下的工作。
如果尚未创建,则创建 cron 文件设置执行时间。
感谢您的调查。
答案1
你可以这样做:
crontab -l > ./my.cron
: manipulate ./my.cron somehow without editing
crontab ./my.cron
我不知道有这样一个工具可以作为创建 cron 条目的“向导”。
如果您的问题确实是关于使用 nano,那么请将您的VISUAL
环境变量设置为您喜欢的编辑器。
答案2
我不明白你想要什么。创建 crontab 的正常方法是运行crontab -e
。然后,用户将“只需输入要执行的命令,脚本将完成其余工作”。用户所要做的就是设置时间和要运行的命令。还有什么比这更简单的呢?
不可能cron
自动设置时间,它怎么知道你希望命令何时运行?你的意思是你想创建一个具有默认时间?如果是的话,你可以这样做:
#!/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';