标签: zip

如何在凌乱的文件夹中解压、解压 -xvf -- 解压?

通常,我取消归档内容,$ mkdir newFolder; $ mv *.zip newFolder; $ cd newFolder; $unzip *.zip但有时我会变得懒惰,只是在任意文件夹中进行操作,$ unzip *.zip因此不时会弄乱其他内容。我将在这里列出一些方法——一些存档版本肯定有蹩脚的标志,而另一些则更加简陋,我对后者更感兴趣。

有些方法可以取消存档,还有其他方法吗?

  1. $ find . -anewer fileThatExistedBeforeUnarchieving -ok rm '{}' \;缺点是它列出了*.zip目录,因此您需要使用 slow -ok、 slow 与许多*.zip匹配项,并且由于某种原因,它似乎并不匹配提取的所有内容。

  2. 如果提取的文件量少,一个一个,慢,麻烦,容易出错。

  3. 当我想确定存档的内容是否实际上是一个文件夹时,我有时会使用$ unzip -l *.bsd,至少在 obsd 的解压缩版本中工作。

如果您指的是某些存档工具,请在适当的时候说明它们。保持简单——我更感兴趣的是你如何做到这一点,而不是一个单一的工具。

tar zip archive file-management

15
推荐指数
1
解决办法
3522
查看次数

删除意外提取的文件

可能的重复:
如何解压、解压 -xvf — 在凌乱的文件夹中解压?

这是一个非常烦人的现象。有时,我下载档案 ( tar.gz, tar.bz2, zip, rar, etc) 并tar xf [file]在文件目录中运行(或类似)。在极少数情况下,所有文件都在当前工作目录而不是子目录中提取。这可能导致无法使用模式匹配解决方案简单地删除数百个文件和数百个模式。

有没有办法获取存档的文件内容,然后删除当前工作目录中该列表中的所有文件?

zip archive rm

15
推荐指数
1
解决办法
5531
查看次数

将 Windows 创建的 ZIP 转换为 Linux(内部路径问题)

我在 Windows 机器上创建了一个 .zip(在我的控制范围之外)。zip 文件包含解压缩时需要保留的路径。

但是,当我解压缩时,所有文件都像:
unzip_dir/\window\path\separator\myfile.ext

我已经尝试过,有和没有-j选择。我的问题是,我需要在这条道路的信息\window\path\separator\。我需要在解压缩时创建该文件结构。

我可以在脚本中轻松地mv将文件和翻转\/,但随后出现目标路径目录不存在的错误。我现在的解决方法是mkdir -p路径(转换\为 后/),然后cp是这些路径的文件。

但是有很多文件,mkdir -p每个文件的这些冗余语句确实会减慢速度。

有没有更优雅的方法将带有 Windows 路径的 zip 文件转换为 Linux 路径?

zip filenames

15
推荐指数
2
解决办法
2万
查看次数

是否有命令列出 .zip 文件中文件的压缩文件大小?

我想查看已压缩为单个 zip 文件的每个文件的绝对大小(以字节为单位)。阅读了 zip 手册页后,我不确定该实用程序是否可以做到。这是在 Mac OS X 上。

就像是:

$zip list myarchive.zip

file1.jpg 100 bytes compressed 3000 bytes uncompressed
file2.jpg 130 bytes compressed 3440 bytes uncompressed
Run Code Online (Sandbox Code Playgroud)

size zip compression files

14
推荐指数
2
解决办法
1万
查看次数

递归查找各种存档格式的所有存档文件并搜索它们的文件名模式

充其量我想要这样的电话:

$searchtool /path/to/search/ -contained-file-name "*vacation*jpg"
Run Code Online (Sandbox Code Playgroud)

...这样这个工具

  • 对给定路径进行递归扫描
  • 获取所有支持存档格式的文件,这些文件至少应该是“最常见的”,如 zip、rar、7z、tar.bz、tar.gz ...
  • 并扫描存档的文件列表以查找有问题的名称模式(此处*vacation*jpg

我知道如何使用查找工具、tar、unzip 等。我可以将这些与 shell 脚本结合起来,但我正在寻找一个简单的解决方案,它可能是单行 shell 或专用工具(欢迎提供 GUI 工具的提示,但我的解决方案必须基于命令行)。

tar find zip 7z rar

14
推荐指数
2
解决办法
8671
查看次数

是否可以将 zip 和 tar.gz 文件作为目录集成到文件系统中

我想知道是否有办法将压缩文件作为目录集成到文件系统中(我认为它与挂载有点不同)?

例如,您可以将一个下载compressed-file.tar.gz到他的本地硬盘驱动器,然后cd compressed-file.tar.gz从压缩文件夹中执行并运行脚本,或者执行cp some-file ..以提取其中一个文件。

我知道Btrfs支持压缩,但我不想更改我拥有的文件系统 (ext3) 来支持此功能。

filesystems tar zip mount files

14
推荐指数
2
解决办法
2980
查看次数

压缩目录中没有父目录的所有文件和子文件夹

我有以下文件夹结构

folder
|
|--foo.txt
|
|--sub_folder
   |
   |--bar.txt
Run Code Online (Sandbox Code Playgroud)

我想压缩文件夹的内容(文件和子文件夹)而不在 zip 中包含根文件夹。

我试过命令

zip -r package.zip folder

但这包括根文件夹。还尝试了以下形式

zip -j -r package.zip folder

但这将使所有目录结构变平并仅包含文件。如何保留内部目录结构但忽略父文件夹?

directory zip filenames

13
推荐指数
1
解决办法
2万
查看次数

这是一个 zip 加密错误吗?

我最近发现了一个漏洞,我(或假设任何人)可以在其中重新加密我加密的 zip 文件,而无需知道密码:

#zip --encrypt encrypted.zip -r dir1/

以上将提示用户输入密码。是否有我遗漏的东西,或者这是一个已知问题?

encryption zip

13
推荐指数
1
解决办法
2910
查看次数

如何使用“zip”命令创建没有文件扩展名的 zip 存档?

通常,要压缩目录,我可以执行以下操作:

zip -r archive.zip directory/
Run Code Online (Sandbox Code Playgroud)

但是,如果我尝试archive.zip像这样删除扩展名:

zip -r archive directory/
Run Code Online (Sandbox Code Playgroud)

它隐式地将.zip扩展附加到输出。有没有办法在不创建 a.zip然后重命名它的情况下做到这一点?

zip在 Ubuntu 18.04 上使用这个版本:

Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license.
This is Zip 3.0 (July 5th 2008), by Info-ZIP.
Run Code Online (Sandbox Code Playgroud)

command-line bash zip

13
推荐指数
2
解决办法
2847
查看次数

为什么有时会在 ZIP 文件中明确列出目录?

在构建提取 ZIP 文件的应用程序时,我注意到有时 ZIP 文件明确包含目录条目,有时则不包含。例如给出以下结构

\n
folder1/\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 file1\n
Run Code Online (Sandbox Code Playgroud)\n

我发现通过以下方式列出内容时给出以下不同输出的文件unzip -lv file.zip

\n
 Length   Method    Size  Cmpr    Date    Time   CRC-32   Name\n--------  ------  ------- ---- ---------- ----- --------  ----\n       5  Stored        5   0% 2023-04-20 13:54 3bb935c6  folder1/file1\n--------          -------  ---                            -------\n       5                5   0%                            1 file\n
Run Code Online (Sandbox Code Playgroud)\n
 Length   Method    Size  Cmpr    Date    Time   CRC-32   Name\n--------  ------  ------- ---- ---------- ----- --------  ----\n       0  Stored        0   0% 2023-04-20 13:54 00000000  folder1/\n       5  Stored        5   0% 2023-04-20 13:54 3bb935c6  folder1/file1\n--------          -------  --- …
Run Code Online (Sandbox Code Playgroud)

zip

13
推荐指数
1
解决办法
1131
查看次数