繁体   English   中英

如何从 HDFS 中的 Path 获取绝对路径

[英]How to get absolute path from Path in HDFS

我对 HDFS 非常陌生,并面临以下问题: org.apache.hadoop.fs.Path没有类似getAbsolutePath的方法,它会返回String

toString方法没有正确记录,所以使用它是否可靠?

org.apache.hadoop.fs.Path应该返回完整路径。 是的,toString方法几乎没有任何文档,但它的工作原理与它应该的一样!

也许这也可以工作:

Path p = fs.getFileStatus(new Path(".")).getPath(); 
URI(p.toString()).getPath(); 

参考: http : //lucene.472066.n3.nabble.com/Is-there-a-way-to-get-an-absolute-HDFS-path-td3820562.html

如您所述,依赖“ toString”可能不是一个好主意。 如果toString的定义将来更改,该怎么办。

我认为最好做这样的事情

path.toURI().getRawPath()

试试下面的 hdfs 命令:

hdfs getconf -confKey fs.defaultFS

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM