Linux crontab 输出重定向不生效问题解决

本文介绍了在Linux中遇到crontab任务的输出重定向未生效的问题。通过分析,指出问题源于/bin/sh不支持&>>重定向,并提供了修正方法——改用标准的重定向方式确保日志记录。同时提醒,未重定向的crontab任务会以邮件形式发送,可能占用大量磁盘空间,建议正确设置重定向。
摘要由CSDN通过智能技术生成

本博客所有文章采用的授权方式为 自由转载-非商用-非衍生-保持署名 ,转载请务必注明出处,谢谢。

声明:
本博客欢迎转发,但请注明出处,保留原作者信息
博客地址:孟阿龙的博客
所有内容为本人学习、研究、总结。如有雷同,实属荣幸


问题

近期在crontab中添加了一个定时任务,该任务执行之后默认会有正常输出。为了确保在任务执行过程中的异常信息也可以捕获,方便问题定位,因此在crontab中我写了这么一条命令:

01 09 * * * cd /opdir/test/ && ./test.sh &>>test.log

以上命令非常好理解,每天9:01执行test.sh 脚本并且将脚本的标准错误输出、标准输出全部重定向到文件 test.log中。最终发现脚本是正常执行了,但是test.log 这个日志文件中却没有任何内容。

为了解决和解释这个问题,接下来我们先简单介绍下linux系统中重定向的问题

概念

Linux系统中:
1: 表示标准输出(stdout),默认输出到屏幕
2:表示标准错误输出(stderr),默认输出到屏幕

在平时我们经常使用如下方法将脚本执行结果重定向:

bash test.sh >test.out     //脚本的标准输出写入到文
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值