对文件夹进行‘gzip’命令?

对文件夹进行‘gzip’命令?

我对 Mac 命令提示符还不熟悉。如何在 Mac OS X 中创建文件夹的 gzip?一些人告诉我,如果要创建文件夹的 gzip,应该先将其“tar”,然后再“gzip”。这样对吗?

答案1

Tar 是归档工具,而 gzip 是压缩工具。为了压缩整个目录,首先需要将其归档为单个文件。这就是 tar 的工作。然后压缩归档文件。您可以使用适当的选项在一个 tar 命令中完成这两项任务。

tar -czf 文件夹名称.tar.gz 文件夹名称/

如果您不想创建 tar 存档(可能只想压缩单个文件),那么您可以直接使用 gzip 命令。

gzip 文件.txt

它将创建一个名为 file.txt.gz 的压缩文件

答案2

如果有人在搜索“Mac 中的 gzip”时仍然发现这个问题,我写了一篇指南,希望对其他人有用。内容如下:

压缩

最基本的命令将压缩文件filename.ext,然后filename.ext.gz在同一目录中替换它。

gzip filename.ext

如果您不想丢失原始文件,则需要将输出通过管道传输gzip -c到文件中。

gzip -c filename.ext > anotherfile.gz

我们还可以从标准输入进行压缩,这样我们就可以压缩其他命令的输出。

cat filename.ext | gzip > anotherfile.gz

OS X 还附带了compressuncompress命令。它们使 gzip 更加“智能”,因为如果文件在压缩过程后会变大,它就不会压缩文件。以下命令将同一目录中的替换filename.ext为。filename.ext.Z

compress filename.ext

解压缩

要将文件恢复到未压缩的自然状态,您可以使用 gzip 或其他包装器。使用标志调用 gzip 的解压缩模式。-d此模式将替换同一目录中的文件。还有一个名为的快捷方式可以执行相同操作。filename.ext.gzfilename.extgunzip

gzip -d filename.ext.gz
gunzip filename.ext.gz

我们还可以将解压的文件通过管道传输到标准输出,以将其保存到另一个文件。

gzip -cd filename.ext.gz > anotherfile
gunzip -c filename.ext.gz > anotherfile

将 gzip 内容读取到标准输出的另一种快速方法是zcat,它基本上与调用相同gzip -cd,但您可以调用多个文件并将它们连接起来,就像命令连接文本文件一样cat。唯一的缺点是您的文件需要带有后缀.Z才能工作...

zcat filename.ext.Z
zcat file_a.Z file_b.Z file_c.Z

但不要害怕!zcat它仍然很有用,因为它可以从标准输出解压缩。因此,您基本上可以将文件传输到 zcat 以在终端窗口上解压缩它们。

cat filename.ext.gz | zcat

如果您需要快速检查文件的内容,这非常有用,您甚至可以轻松地将 zcat 的输出保存到文件中。

cat filename.ext.gz | zcat > anotherfile

包装uncompress器的工作原理类似于gzip -cd,但它会在当前目录中查找带有 .Z 扩展名的文件来替换它们,因此您只需要指定要恢复的文件名,但如果您使用 .Z 扩展名调用它也没问题,因为程序会忽略它。

compress filename.ext
uncompress filename.ext

希望您觉得我的指南有用:)

答案3

MacOS X 是 Unix,所以这应该可以工作(这在 GNU/Linux 上也可以工作)

tar czvf compressed.tar.gz 文件夹

答案4

补充@taskinoor的答案:如果你使用单文件版本,又名

gzip file.txt

请注意,原始文件(file.txt)将被删除,并且只剩下 file.txt.gz

我本来想把这个作为评论,但是没有足够的业力来做到这一点:=)

相关内容