将zip文件包装在文件夹中

时间:2018-07-02 07:06:39

标签: bash zip

在压缩一堆文件时,是否可以在此过程中将它们包装在文件夹中?

zip -r archive.zip \
    file1.txt \
    file2.txt \
    things/*/*.txt

我希望压缩文件包含一个文件夹,其中包含file1.txtfile2.txtthings文件夹。

有没有一种方法可以使用zip而不用将所有这些文件复制到一个文件夹中,然后再压缩该文件夹?

2 个答案:

答案 0 :(得分:1)

有一个技巧,可以使用软链接来完成这项工作。

  1. cd到一个保存文件的目录
  2. 创建一个指向包含文件ln -s /folderWithMyStuff containingFolder的文件夹的软链接
  3. 压缩软链接zip -r archive.zip containingFolder

您的文件现在将保存在archive.zip中的一个名为containsFolder的文件夹下

答案 1 :(得分:0)

我最终将zip解压缩到一个文件夹,然后将该文件夹解压缩。

zip -r archive.zip \
    file1.txt \
    file2.txt \
    things/*/*.txt

unzip archive.zip -d archive

rm archive.zip

zip -r archive.zip archive

rm -rf ./archive