MediaWiki 0.1.18 のバグを回避するために、再圧縮/再圧縮する必要がある zip ファイルがたくさんあります。
私はそれを行うことができます
#!/bin/bash
for f in *zip; do
cd tmp
rm -rf *
unzip ../"$f"
zip -r ../"$f" *
cd ..
done
しかし、パイプやおそらくzipオプションなどでこれを行う方法はありますか?
gzip -d -c old.gz | gzip >new.gz
できません。zipにビットを送信すると、1つのファイルがいつ終了し、新しいファイルがいつ開始するかを知る方法がありません。
実際、あなたはその仕事をするためにあなた自身のプログラムを書くことができます、しかしあなたの説明からそれはやり過ぎのようです。また、修正しているバグが正確にわからないため、他の回避策を提案することはできません。
あなたが探しているものを正確に実行するAdvanceCOMPと呼ばれるユーティリティがあります。ディスクへの中間抽出なしで、ZIP および GZ ファイル (およびその他のファイル) を再圧縮します。(使用されるメカニズムは、データを解凍して再圧縮することだと思いますが、ファイルをディスクに書き込んだり、メタデータを再生成したりする必要はありません。)