hive周期任务布署之crontab+nohup打印日志不完整解决方法

本文介绍如何确保使用Cron和NoHup执行脚本时,日志能够完整输出,避免邮件发送机制导致的日志缺失,并提供了解决方案,包括使用重定向技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先认识几个标识符:
* /dev/null 表示空设备文件
* 0 表示stdin标准输入
* 1 表示stdout标准输出
* 2 表示stderr标准错误
如果只执行nohup时,日志是打印完整的。crontab有个发送邮件到/var/spool/mail/{current_username}的机制,默认会把除标准输出外的所有其它输出均通过邮件发送给linux的当前用户,则这部分输出是不会进入到nohup.log中去。
解决办法:
用重定向的方法
比如:
nohup sh hive_script_crontab.sh >> ~/nohup.out 2&>1

crontab 其实可以不用nohup连用,但是好多人都习惯和nohup连用,如果不和nohup连用,也会出现日志不完整的现相。在这里“>>”两个是追加,’>’是覆盖。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值