shell函数下面以编程方式创建一个CRON条目。
function create_cron(){
echo ""
echo "Create CRON entry"
#write out current crontab
crontab -l > allcrons
#echo new cron into cron file
echo "0 1 * * * python /opt/EO/Ava/utils/xtr_test_aggregation.py" >> allcrons
display_all_crons allcrons
#install new cron file
crontab allcrons
rm allcrons
}
如果脚本运行两次,上述功能的唯一问题是可能会重复创建CRON条目。我想创建一个CRON作业,只要它不存在。请注意,如果已经有重复的条目,我想留在那里。我只是对这个脚本专门创建的重复条目感到困扰。
答案 0 :(得分:2)
您需要查看crontab并检查您的条目是否已经存在,如果它不仅仅是您添加它:
function create_cron(){
echo ""
echo "Create CRON entry"
new_entry="0 1 * * * python /opt/EO/Ava/utils/xtr_test_aggregation.py"
if ! crontab -l | fgrep -q "$new_entry"; then
#write out current crontab
crontab -l > allcrons
#echo new cron into cron file
echo "$new_entry" >> allcrons
display_all_crons allcrons
#install new cron file
crontab allcrons
rm allcrons
fi
}