簡體   English   中英

通過bash中的10個文件進行迭代壓縮過程

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM