gpt4 book ai didi

hadoop - 递归查找 HDFS 文件夹中的最大文件或子目录

转载 作者:可可西里 更新时间:2023-11-01 16:55:36 28 4
gpt4 key购买 nike

我想递归地查找 HDFS 文件夹中的最大文件或子目录。有没有什么命令或者脚本可以引用?

提前致谢,林

最佳答案

试试这个 shell 脚本,如果你想找到最大大小的文件:

h1out="/path/to/out/file/hadoop-ls-out.txt"
a1out="/path/to/out/file/hadoop-awk-out.txt"
h1="`hadoop fs -lsr /usr > $h1out`"
a1="`awk '{print $5,$8}' $h1out > $a1out`"
a2="`awk 'BEGIN{first=1;}{if (first) { max = min = $1; first = 0; next;}if (max < $1) max=$1; if (min > $1) min=$1; }END { print max }' $a1out`"
g1="`grep -r $a2 $a1out`"
echo $g1

解释:

h1out是存放hadoop fs -lsr输出的文件路径

a1out是存放awk输出的文件路径

h1 在我的 HDFS 路径 /usr 中递归列出文件并将其存储在 h1out

a1h1out 文件中打印出 filesizefilename(带完整路径)并将其保存在 a1out 文件

a2filesize 中找到 minma​​x 值,但我只使用了 max(因为你需要 max ) 所以它只显示最大文件大小

g1 在文件 a1out 中搜索 $a2 的值并打印出来。此结果打印 filesizefilename 以及 ma​​x fileseize

NOTE: If you are using latest hadoop version, replace "hadoop fs" with "hdfs dfs"

关于hadoop - 递归查找 HDFS 文件夹中的最大文件或子目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30362986/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com