[英]Iterative zipping process through 10 files in bash
嗨,我想知道是否有人可以帮助我的编码,理论上我知道如何使用基本命令手动进行编码,但是为了节省时间并提高效率,我想使用.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进行压缩并压缩为新文件,然后对file_4到file_1进行压缩,以此类推(您明白了)。
一旦它与file_1一起经过_2到_10,我想对file_2进行同样的操作,并分别附加1,3,4,5,6,7,8和10并分别添加zip等
因此,最后我应该有90个单独的zip文件。 (包括每个文件本身的压缩文件,即file_1.gz,file_2.gz等,作为将我的附加文件与之进行比较的参考)。
在此先感谢您提供任何提示或帮助。
ps所提供的代码是否真的有效并不重要,例如,一个接一个地分成10个不同的循环,如果很清楚就可以了。 我仅分析结果,而不使用每个代码。 谢谢!
使用循环:
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的创建作为练习留给读者。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.