本文介绍了Shell脚本:加入小gzip压缩文件到更大的文件解压缩没有他们的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

限时删除!!

我有60MB左右各部分8000 GZ文件。我想将它们合并到几个较大的文件。因此,如何做,在bash脚本的无解压缩它们

I have some 8000 gz files of around 60MB each. I want to merge them into few larger files. So how to do it in a bash script without unzipping them ?

shell脚本可能需要输入新的文件大小或文件相结合的数量。

Shell script may take input as new-file-size or number of files to combine.

例如说我有1.gz,2.gz,3.gz ... 10.gz
现在我需要每说3个文件一个文件,所以现在1.gz,2.gz和3.gz会结合成1_new.gz等。

For example say I have 1.gz, 2.gz, 3.gz ... 10.gzNow I need one file per say 3 files, so now 1.gz, 2.gz and 3.gz will combine into 1_new.gz and so on.

推荐答案

有可能concatinate 的gzip 编辑文件一起,但是当你 gunzip解生成的文件,你会得到一个单一的数据流,看的,以供参考。

It is possible to concatinate gziped files together, however when you gunzip the resulting file you'll get a single stream, see the gzip manual for reference.

一个脚本将类似于安斯加尔Wiechers的一个焦油

A script would be similar to Ansgar Wiechers's one for tar:

#!/bin/bash

maxnum=$1
i=1
j=0
for f in *.gz; do
   cat $f >> archive_$j.gz
   i=$((i+1))
   if [ $i -eq $maxnum ]; then
      i=1
      j=$((j+1))
   fi
done

请注意,上面的code是未经考验的。

Note that the above code is untested.

如果您要存档的东西正确焦油是一个更好的解决方案,但如果你想要做的是concatinate许多文件其中一直的gzip ED那么这样的concatination因为这是不错的。

If you want to archive things properly tar is a better solution, but if all you want to do is concatinate a number of files which have been gziped then such a concatination as this is good.

这篇关于Shell脚本:加入小gzip压缩文件到更大的文件解压缩没有他们的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

1403页,肝出来的..

09-08 13:27