1つのコマンドを使用して複数のZlibアーカイブを解凍する方法

1つのコマンドを使用して複数のZlibアーカイブを解凍する方法

200以上の.zlibアーカイブがあり、Linuxコンソールで1つのコマンドを使用して解凍したいと思います。コマンドを正しく実行できません。たぶん誰かが私を助けることができます:

for z in *.zlib; do; zlib-flate -uncompress < $z > $z ; done

このコマンドを実行すると、すべてのファイルが空になります。出力ファイル名はあまり気にしないので、これはカウンターでも追加された文字列でもかまいません。とても感謝しています!

答え1

>部分が最初に実行され、新しい空のファイルが生成されて出力が収集されますが、このプロセスは予想される入力データを削除します。

修正:出力に別のファイル名を明示的に使用します。

for z in *.zlib; do; zlib-flate -uncompress < "$z" > "${z%.zlib}" ; done

ファイル名の末尾が"${z%.zlib}"切り捨てられます。.zlib

関連情報