我正试图找出hadoop命令来一次性获取多个文件夹/目录的大小。
我可以通过以下命令获取单个文件夹的大小:hadoop fs -du -s -h <directory>
在这种情况下,存在更多的子目录。
我认为没有Hadoop命令可以做到这一点。但是你可以把它和其他shell程序结合起来。例如:
hadoop fs -ls -R <directory> | grep "^d" | awk '{print $NF}' | xargs hadoop fs -du
这将为<directory>
中的每个目录执行hadoop fs -du
。
上述命令的分解:
hadoop fs -ls -R <directory> | grep "^d"
获取<directory>
中的所有目录awk '{print $NF}'
获取目录名- CCD_ 7针对每个目录名执行CCD_
此外,如果您只对目录的大小感兴趣,那么使用hadoop fs -du -s
而不是hadoop fs -du
可能会很有用。