我是hdfs和nix的新手,我只是好奇,如何在hadoop中打印文件树?例如,我们可以在任何nix系统中键入“tree”,并给出如下结果:
[admin~]$tree . ├── backup_snapshot.sh ├── project │ ├── doc │ │ └── README │ ├── src ....
这是非常清楚的输出,但由于hdfs不是完全符合posix的,所以我不知道如何在hadoop中打印它。
mtb9vblg1#
基于http://en.wikipedia.org/wiki/tree_(unix)您可以使用树状表示法,例如:
hadoop fs -lsr /mydir | awk '{print $8}' | \ sed -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|/'
n9vozmp42#
从技术上讲,如果您真的想这样做(尽管我不知道您为什么要这样做,除了调试/可视化/娱乐目的),您可以使用fuse将hdfs作为普通的文件系统安装—有几种实现可用。这将为您提供一个目录,您可以运行您最喜欢的“树”可视化工具或任何您习惯于使用普通文件系统的工具。
s4n0splo3#
刚刚创建了一个简单的项目:http://github.com/trovit/hdfstree
3条答案
按热度按时间mtb9vblg1#
基于http://en.wikipedia.org/wiki/tree_(unix)您可以使用树状表示法,例如:
n9vozmp42#
从技术上讲,如果您真的想这样做(尽管我不知道您为什么要这样做,除了调试/可视化/娱乐目的),您可以使用fuse将hdfs作为普通的文件系统安装—有几种实现可用。这将为您提供一个目录,您可以运行您最喜欢的“树”可视化工具或任何您习惯于使用普通文件系统的工具。
s4n0splo3#
刚刚创建了一个简单的项目:http://github.com/trovit/hdfstree