您的位置:首页 > 运维架构 > Shell

Shell脚本中,判断Hadoop文件是否存在

2017-08-14 17:22 344 查看

Shell脚本中,判断Hadoop文件是否存在

在Hadoop任务开发中,经常需要判断Hadoop的执行结果是否正常,本人常用的方法就是通过hadoop内置命令判断最终输出目录是否存在,以及 输出的目录是否为空,Shell代码如下:

# 测试文件是否存在, 存在 $?=0, 不存 $?=1
HADOOP_HOME=`which hadoop`
`$HADOOP_HOME fs -test -e $OTT_ETL_OUTPUT_PATH`
if [ $? -eq 0 ]; then
ETL_LOG_COUNT=`$HADOOP_HOME fs -ls $OTT_ETL_OUTPUT_PATH'/part-*' | wc -l`
if [ $ETL_LOG_COUNT -eq 0 ]; then
echo -e " `date '+%Y-%m-%d %H-%M-%S'` $OTT_ETL_OUTPUT_PATH is empty. ";
return 1
else
return 0
fi
else
echo -e " `date '+%Y-%m-%d %H-%M-%S'` $OTT_ETL_OUTPUT_PATH Not existed. ";
return 1
fi
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hadoop shell