我的 cron 和脚本编写技能非常差,但我需要由用户“cpc”每 5 分钟运行一次作业。所以我创建了一个脚本并将其保留在/root 中。
我的 crontab -e 关于它的条目是:
0-59/5 * * * * /root/bi-kettle.sh
这个脚本(bi-kettle.sh)是:
#!/bin/bash
su cpc
cd /home/cpc/data-integration
/bin/bash kitchen.sh -rep="01" -job="MainLoad" -user="admin" -pass="admin" -level="Basic"`
但它不会在任何时候被调用或运行。我在这里缺少什么?
提前致谢!
答案1
这su
就是它失败的原因,即启动交互式 shell。为什么不将其添加到 cpc 用户的 crontab 中呢?crontab -e -u cpc
答案2
脚本的权限是什么样的?即,如果您运行ls -l /root/bi-kettle.sh
,脚本是否设置为可由 root 执行?如果没有,您的修复可能很简单chmod +x /root/bi-kettle.sh