Static method to execute a shell command.
Covers most of the simple cases without requiring the user to implement the Shell interface.
Parameters:
env the map of environment key=value
cmd shell command to execute.
Returns:
the output of the executed command.
2条答案
按热度按时间6qfn3psc1#
但是如果我想在通过hdfsapi for java完成作业之后合并这些输出,我应该怎么做呢?
我猜,因为我自己还没有尝试过这个方法,但是我认为您正在寻找的方法是fileutil.copymerge,它是fsshell在运行
-getmerge
命令。FileUtil.copyMerge
将两个文件系统对象作为参数-fsshell使用filesystem.getlocal检索目标文件系统,但我看不出有任何理由不能在目标上使用path.getfilesystem来获取输出流也就是说,我不认为它能给您带来什么好处——合并仍然在本地jvm中进行;所以你没有存太多的钱
-getmerge
然后-put
.3npbholx2#
通过在代码中设置一个reducer,可以得到一个输出文件。
可以满足您的要求,但成本高昂
或