Linux定时任务crontab将错误日志与正确输出写入到文件

William
2021-01-15 / 0 评论 / 22 阅读 / 正在检测是否收录...

不输出内容

*/5 * * * * /root/XXXX.sh &>/dev/null 2>&1

将正确和错误日志都输出到 /tmp/load.log

*/1 * * * * /root/XXXX.sh > /tmp/load.log 2>&1 &

只输出正确日志到 /tmp/load.log

*/1 * * * * /root/XXXX.sh > /tmp/load.log
// 上下效果等同
*/1 * * * * /root/XXXX.sh 1>/tmp/load.log &

只输出错误日志到 /tmp/load.log

*/1 * * * * /root/XXXX.sh 2> /tmp/load.log & 

名词解释

在shell中,每个进程都和三个系统文件相关联:标准输入stdin标准输出stdout标准错误stderr,三个系统文件的文件描述符分别为012。所以这里2>&1的意思就是将标准错误也输出到标准输出当中。

>就相当于 1> 也就是重定向标准输出,不包括标准错误。通过2>&1,就将标准错误重定向到标准输出了(stderr已作为stdout的副本),那么再使用>重定向就会将标准输出和标准错误信息一同重定向了。如果只想重定向标准错误到文件中,则可以使用2> file

3

评论 (0)

取消