如何在linux中压缩目录,不包括单个文件?

时间:2014-08-27 03:55:49

标签: linux

我想压缩一个目录,我可以用

进行压缩
zip -r zip_file_name directory 

但是,我想从zip文件中排除目录中的单个文件。我该怎么做呢?

1 个答案:

答案 0 :(得分:1)

输入要压缩的目录。然后:

find . -not -name "file_to_exclude" | zip zip_file_name -@

上面的命令将在目录中创建zip_file_name.zip。

要在特定路径创建zip,请输入要压缩的目录。然后:

find . -not -name "file_to_exclude" | zip ~/ParticularPath/zip_file_name -@

从zip手册的linux手册页:

- @文件列表。如果文件列表指定为 - @ [Not on MacOS],则zip从标准输入而不是命令行获取输入文件列表。例如,

zip - @ foo

将在foo.zip中的stdin上每行列出一个文件。

在Unix下,此选项可与find命令一起用于强大的效果。例如,要归档当前目录及其子目录中的所有C源文件:

找到。 -name" *。[ch]" -print | zip源码 - @