zip 命令继续包含整个父目录结构

zip 命令继续包含整个父目录结构

我正在尝试在 Ubuntu WSL 上运行此 zip 命令:zip -r /home/chansen/db-backup/backup.zip /mnt/c/data/db/*

db我希望 zip 文件在顶层包含所有内容,但生成的 zip 文件将这些文件嵌套在所有父目录中。zip 文件包含: mnt > c > data > db > myFiles。我只希望 myFiles 部分位于顶层,而不包含所有这些父目录。

答案1

实现此目的的一种方法是cd进入 db 目录,然后使用相对路径运行 zip 命令,如下所示:

cd /mnt/c/data/db/
zip -r /home/chansen/db-backup/backup.zip ./*

答案2

另一种方法是使用-j选项。以下来自zip手册页

   -j
   --junk-paths
          Store just the name of a saved file (junk the path), and do not store directory names. By default,  zip
          will store the full path (relative to the current directory).

所以对于你来说,你应该这样做

zip -r -j /home/chansen/db-backup/backup.zip /mnt/c/data/db/*

相关内容