
今天,我编写了一个脚本来手动执行结果,但是在预定任务上运行系统的结果没有结果. 我之前也遇到过这个问题. 我没有任何记录就解决了,我又被迫~~~
如下所示:
手动执行会有结果
将其放在预定任务中,每五分钟执行一次
解决方案:
在脚本中加载系统环境变量

源/ etc / profile
如果您不加入脚本计划任务,则可以编写类似的效果
* / 5 * * * * ./etc/profile;sh /fs01/scripts/ulimit.sh
原因如下:
crontab和环境变量
不要以为cron知道它需要的特殊环境,不是. 因此,您必须确保在shelll脚本中提供了所有必需的路径和环境变量,除了一些自动设置的全局变量之外. 因此,请注意以下三点:

1)当脚本中包含文件路径时,写入全局路径;
2)当使用Java或其他环境变量执行脚本时,请通过source命令引入环境变量,例如:
cat start_cbp.sh
#!/ bin / sh
源/ etc / profile
导出RUN_CONF = / home / d139 / conf / platform / cbp / cbp_jboss.conf

/usr/local/jboss-4.0.5/bin/run.sh -c mev&
3)手动执行脚本但不执行crontab时. 此时,您必须大胆地怀疑环境变量是原因linux 查看计划任务是否执行,并且您可以尝试直接在crontab中引入环境变量来解决该问题. 如:
0 * * * *. / etc / profile; / bin / sh /var/www/java/audit_no_count/bin/restart_audit.sh
3. 其他应注意的问题
1)新创建的cron作业将不会立即执行. 至少需要2分钟才能执行. 如果重新启动cron,它将立即执行.
2)执行每个作业后,系统将自动将输出发送给当前系统用户. 随着时间的流逝linux 查看计划任务是否执行,它会非常大,甚至会爆裂整个系统. 所以每个工作

命令后的重定向是非常必要的: > / dev / null 2>&1. 前提是求职
中的命令
需要进行正常处理,例如附加到特定的日志文件.
3)当crontab突然失败时,您可以尝试/etc/init.d/crond restart来解决问题. 或检查日志以查看作业是否已执行/报告tail -f / var / log / cron.
4)不要随机运行crontab -r. 它从Crontab目录(/ var / spool / cron)中删除用户的Crontab文件. 删除的用户的所有crontab都消失了.
5)crontab中的%具有特殊含义,表示换行符. 如果要使用它,必须将其转义\%,例如crontab中不会执行常用的日期'+%Y%m%d',应将其替换为日期'+ \%Y \%m \%d'`
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-240392-1.html
也有源于军校教育的正统坚毅而富有责任感的稳特质
小米公关能力
我们坐实12海里要了里子