21

假设我有一个名为 abc 的文件夹,它有几个递归子文件夹,我想压缩 abc 下的所有内容,当我使用以下命令时

zip -r abc.zip abc/*

我得到 abc.zip,但它包含顶级文件夹 abc,所有内容都在 abc 下,如 abc/xxx、abc/yyy 等,如何删除顶级文件夹 abc?我想把所有东西都直接放在 abc.zip 中。

笔记:

  1. 我只能从文件夹外部压缩,所以导航到文件夹 abc,而 zip * 不适合我
  2. 我需要在一行中运行这个命令,我可以用 ; 分隔多个命令
  3. 选项 -j 也不起作用,因为它删除了子文件夹,我想将它们保留在那里。
4

2 回答 2

25
cd abc
zip -r ../abc.zip *

虽然我会说在大多数情况下保留它 abc 使管理更容易。

于 2012-12-05T08:58:56.057 回答
3

7z a -tzip abc.zip -w abc/.

321

于 2013-12-12T14:14:12.023 回答