0

嗨我想知道是否有人可以帮助我的编码,理论上我知道如何使用基本命令手动完成但是为了节省时间并提高效率我想使用 .sh 脚本手动完成它可能使用大量数据。

所以我的想法是我有 10 个文件,它们将被命名为 file_1.txt 到 file_10.txt,我想将 file_1 视为一种“培训”文件。因此将file_2附加到file_1,然后使用gzip压缩并保存在其他地方,我想它看起来像这样......

cat file_1.txt file_2.txt | gzip -c > newfile.gz

但是下一步是对 file_3 到 file_1 和 zip 作为新文件执行相同的操作,然后将 file_4 到 file_1 等(你明白了)。

一旦使用file_1从_2运行到_10,我想对file_2执行相同的操作,并分别附加1、3、4、5、6、7、8和10并压缩等。

因此,最后我应该有 90 个单独的 zip 文件。(包括每个单独压缩的文件,即 file_1.gz、file_2.gz 等,作为比较我附加文件的参考)。

提前感谢任何提示或帮助。

Ps 提供的任何代码是否真的有效都没有关系,例如,一个接一个地分成 10 个不同的循环,如果清楚就可以了。我只是分析结果,而不是使用每个说的代码。谢谢!

4

1 回答 1

3

使用循环:

for i in {1..10} ; do
    for j in {1..10} ; do
        if (( i != j )) ; then
            cat file_$i.txt file_$j.txt | gzip -c > newfile-$i-$j.gz
        fi
    done
done

这会创建 90 个 gzip 文件,不包括每个自己压缩的文件。额外的 10 个 gzip 的创建留给读者作为练习。

于 2013-03-04T00:27:33.560 回答