gpt4 book ai didi

bash - 循环遍历 HDFS 目录中的文件

转载 作者:可可西里 更新时间:2023-11-01 14:11:07 25 4
gpt4 key购买 nike

我需要遍历 Hadoop 文件系统中的所有 csv 文件。我可以用

列出 HDFS 目录中的所有文件
> hadoop fs -ls /path/to/directory
Found 2 items
drwxr-xr-x - hadoop hadoop 2 2016-10-12 16:20 /path/to/directory/tmp
-rwxr-xr-x 3 hadoop hadoop 4691945927 2016-10-12 19:37 /path/to/directory/myfile.csv

并且可以使用

遍历标准目录中的所有文件
for filename in /path/to/another/directory/*.csv; do echo $filename; done

但是我怎样才能将两者结合起来呢?我试过了

for filename in `hadoop fs -ls /path/to/directory | grep csv`; do echo $filename; done

但这给了我一些废话,比如

Found
2
items
drwxr-xr-x

hadoop
hadoop
2
2016-10-12
....

最佳答案

这应该可行

for filename in `hadoop fs -ls /path/to/directory | awk '{print $NF}' | grep .csv$ | tr '\n' ' '`
do echo $filename; done

关于bash - 循环遍历 HDFS 目录中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40010820/

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