我不小心对一大堆文件进行了 GZIP,一个一个地压缩,而不是使用 tar(1)。我怎样才能挽回这个烂摊子?

我不小心对一大堆文件进行了 GZIP,一个一个地压缩,而不是使用 tar(1)。我怎样才能挽回这个烂摊子?

我是 gzip 命令的新手,因此我在 google 上搜索了一些要运行的命令,以便我可以递归地对整个目录进行 gzip 压缩。现在,当它这样做时,它将我的每个文件转换为 gzip 格式,并将 .gz 添加到每个文件名的末尾。有没有一种方法可以将它们全部解压缩?

答案1

基本上有两个选项可以浏览整个目录树:

您可以使用find(1)

find . -name '*.gz' -exec gzip -d "{}" \;

或者如果你的 shell 具有递归通配符,你可以这样做:

对于 **/*.gz 中的文件;执行 gzip -d "$file";完毕

答案2

对于一次一个文件,您可以使用:

gzip -d file.gz

对于多个文件,您可以使用:

for i in *.gz; do gzip -d $i; done

相关内容