如何使用一个命令解压缩多个 Zlib 存档

如何使用一个命令解压缩多个 Zlib 存档

我有超过 200 个 .zlib 档案,我想在 Linux 控制台中使用一个命令解压缩它们。我只是无法正确执行命令。也许有人可以帮助我:

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文件名的末尾。

相关内容