当我执行这个shell命令时,它给我第一个文件为null。 我将其输出存储在一个数组中,所以在数组中我的第一个元素是null。 为什么会这样?
hadoop fs -ls /user/hive/warehouse/mashery_db.db/agg_per_mapi_stats_five_minutes/ | sort | awk '{ if (index($8, ".hive") == 0 && $6 $7 <= "'"2016-02-10 05:00"'") print $8 }'
答案 0 :(得分:2)
当我们执行hadoop fs -ls
时,我们在控制台上获得的第一行就像是
找到10个项目
你确定你也没有处理这条线吗?因为,它可能导致null元素。
如果可能,请提供命令hadoop fs -ls /user/hive/warehouse/mashery_db.db/agg_per_mapi_stats_five_minutes/
的输出以供参考?
编辑:
试试这个:
hadoop fs -ls /user/hive/warehouse/mashery_db.db/agg_per_mapi_stats_five_minutes/ | grep -v "^Found" | sort | awk '{ if (index($8, ".hive") == 0 && $6 $7 <= "'"2016-02-10 05:00"'") print $8 }'