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

首先认识几个标识符:
* /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连用,也会出现日志不完整的现相。在这里“>>”两个是追加,’>’是覆盖。

你可能感兴趣的:(hive周期任务布署之crontab+nohup打印日志不完整解决方法)