当前位置: 技术问答>linux和unix
关于cron作业出错的问题------高手请进 来着有分
来源: 互联网 发布时间:2015-03-09
本文导语: 我在执行cron定时作业的工作中遇到如下错误: 首先加入cron的作业可以执行, 但是在执行结束之后却在mail 中报告有错误,所执行的任务正常结束 请问各位高手如何解决 !!! | 因为你的作...
我在执行cron定时作业的工作中遇到如下错误:
首先加入cron的作业可以执行,
但是在执行结束之后却在mail 中报告有错误,所执行的任务正常结束
请问各位高手如何解决
!!!
首先加入cron的作业可以执行,
但是在执行结束之后却在mail 中报告有错误,所执行的任务正常结束
请问各位高手如何解决
!!!
|
因为你的作业有内容输出,但是通过cron执行的脚本是没有自己的输出流的,cron会通过mail的方式把作业的输出mail给用户。要想不收到任何mail的话可以在脚本后面加上1>/dev/null 2>&1,把标准输出和错误输出都重定向到/dev/null中就行了。
|
1. 是输出的问题,crontab里面的程序如果不指定输出的话就会将其输出(标准、错误)以mail的方式通知用户;
2. 是环境变量的问题,有些程序是需要特定的环境变量支持的,如果不给定的话就会出错。
不过看你的情况,似乎应该是第一条的缘故,再问一个:你的程序在命令行执行时是不是有输出啊!?
2. 是环境变量的问题,有些程序是需要特定的环境变量支持的,如果不给定的话就会出错。
不过看你的情况,似乎应该是第一条的缘故,再问一个:你的程序在命令行执行时是不是有输出啊!?
|
是环境变量少吧?
若是shell ,在前面加上所需要的环境变量。
若是自己写的执行码,在程序前加上 putenv( "ENV_VAR=VALUE")函数设置所需环境变量。
若是shell ,在前面加上所需要的环境变量。
若是自己写的执行码,在程序前加上 putenv( "ENV_VAR=VALUE")函数设置所需环境变量。
|
应该是环境变量未设置好的缘故.
若是shell脚本,可在脚本前加上一行代码 . $HOME/.profile
若是可执行二进制文件,可在源代码上如wenlq(when)所说那样做
若是shell脚本,可在脚本前加上一行代码 . $HOME/.profile
若是可执行二进制文件,可在源代码上如wenlq(when)所说那样做
|
按你所说的是输出问题