将文件解压缩为上载到hdfs

8i9zcol2  于 2021-06-01  发布在  Hadoop
关注(0)|答案(1)|浏览(381)

我有要上传到hdfs的数据
数据文件夹是多层的,但最里面的dir只包含多个.gz文件。
文件夹是大约250 gb压缩,我不知道有多少gz文件在那里。
我想上传到hdfs,但他们应该解压缩。
有没有一种方法,我可以实现这一点与单一的 hadoop fs -put 命令?或者写一个脚本文件一个接一个地解压并上传到hdfs是唯一的方法吗?

vulvrdjw

vulvrdjw1#

我想你只能用一个脚本文件,通过解压每个文件。但是你可以用管道来减少脚本,比如:

for file in $( ls ); do
    echo Uncompressing and putting $file
    gunzip -c $file | hdfs dfs -put - "/hdfs-dir/$file.txt"
done

相关问题