将文件解压缩到目标目录?

Ric*_*ard 9 zip macos

我有一个名为的文件All CRGs.zip,我想将其内容解压缩到一个名为的目录中data(该目录已存在并包含一些其他文件)。

这可能吗?我在 OSX 上工作。

我试过了:

$ unzip "All CRGs.zip" -d data/
Run Code Online (Sandbox Code Playgroud)

但这会解压缩所有data/All CRGs不是我想要的东西。我希望一切都直接进入data.

这可能吗?

hei*_*eas 8

您可以重新创建完整的文件夹结构(包括All CRGs-Folder),也可以通过使用unzip 命令的 -flag来忽略ZIP 文件内的所有文件夹。-j

问题是 ZIP 文件是使用All CRGs-Folder 作为顶级(如zip "All CRGs.zip" "All CRGs". 正确的方法是zip "All CRGs.zip" "All CRGs/*"创建该All CRGs文件夹内所有文件和文件夹的 ZIP 存档,而不包含周围的文件夹。

因此,通过保留文件夹结构来仅提取文件的唯一方法是这样的:

unzip "All CRGs.zip" -d data/ && mv "data/All CRGs/*" "data/" && rmdir "data/All CRGs"
Run Code Online (Sandbox Code Playgroud)

它将解压缩整个文件夹,然后将文件夹的内容上移一级,最后删除(现在为空)“所有 CRG”文件夹。