这可能是有关流处理的问题。但是我无法使用awk找到一个优雅的解决方案。
我正在执行一项计划每天运行一次的m / r作业。但是可以在其上运行多个HDFS目录。例如,当天有3个输入目录上载到HDFS,因此每个目录需要运行3个m / r作业。
所以我需要一个解决方案,在这里我可以从以下结果中提取文件名:
hdfs dfs -ls /user/xxx/17-03-15*
然后遍历文件名,为每个文件启动一个m / r作业。
谢谢
最佳答案
浏览该问题的更多内容,我发现Hadoop为该问题提供了配置设置。 Here是详细信息。
另外,我只是遇到一些语法问题,而这个简单的awk命令确实做到了,我想要的是:
files=`hdfs dfs -ls /user/hduser/17-03-15* | awk {'print $8'}`
关于hadoop - hdfs命令输出的处理结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29114855/