我有要上传到hdfs的数据数据文件夹是多层的,但最里面的dir只包含多个.gz文件。文件夹是大约250 gb压缩,我不知道有多少gz文件在那里。我想上传到hdfs,但他们应该解压缩。有没有一种方法,我可以实现这一点与单一的 hadoop fs -put 命令?或者写一个脚本文件一个接一个地解压并上传到hdfs是唯一的方法吗?
hadoop fs -put
vulvrdjw1#
我想你只能用一个脚本文件,通过解压每个文件。但是你可以用管道来减少脚本,比如:
for file in $( ls ); do echo Uncompressing and putting $file gunzip -c $file | hdfs dfs -put - "/hdfs-dir/$file.txt" done
1条答案
按热度按时间vulvrdjw1#
我想你只能用一个脚本文件,通过解压每个文件。但是你可以用管道来减少脚本,比如: