AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题

问题[zip](unix)

Martin Hope
Clanape
Asked: 2024-10-23 09:47:59 +0800 CST

unzip 是否有办法仅提取特定子文件夹而不创建该文件夹的父目录?

  • 6

我想使用标准工具从 .zip 文件中提取特定子文件夹(及其所有内容)unzip。我对它的父目录不感兴趣,也不想创建它们。

例如:
unzip /path/to/archive.zip "var/www/html/example.com/*" -d ~/website

我希望文件夹仅~/website包含存档中的内容,但实际上,解压缩会重新创建文件夹的父目录路径,因此我最终得到的是。example.com~/website/var/www/html/example.com

我看到了有关提取特定文件夹的这个疑问,但它没有回答这个问题。

zip
  • 2 个回答
  • 37 Views
Martin Hope
mangolassi
Asked: 2023-12-07 20:19:29 +0800 CST

在终端上使用密码压缩 (Ubuntu 20.04)

  • 5

我正在运行命令

zip -p mypassword archieve.zip -r 下载/

它创建一个文件

我的密码.zip

我究竟做错了什么?

zip
  • 1 个回答
  • 36 Views
Martin Hope
Blockchain Office
Asked: 2023-06-15 02:55:30 +0800 CST

使用方舟创建 zip 存档并使用存储方法?

  • 6

如何使用方舟图形界面创建一个zip压缩包,并使用“ Store ”而不是“ Deflate ”进行压缩?

更新

显然,关于压缩方法的版本之间存在显着差异。

@Marcus Müller的声明“来自新安装的 Ark 22.12.3 的屏幕截图”提示我在另一台机器上打开 Ark。

方舟 18.8.3

在此处输入图像描述 在此处输入图像描述

方舟 20.12.2

在此处输入图像描述 在此处输入图像描述

我现在还在Creating Archives and Adding Files上找到了这句话。

请注意,使用预选默认值以外的压缩方法可能会限制与文件归档程序的兼容性。例如,使用“Deflate”以外的压缩方法打开 zip 存档需要更新的存档软件。

zip
  • 1 个回答
  • 32 Views
Martin Hope
GPWR
Asked: 2023-06-11 04:14:37 +0800 CST

使用 `zipinfo` 非递归地列出档案的内容

  • 6

是否有一个标志可以传递给命令zipinfo以非递归方式列出存档的内容?

例如,如果目标存档包含三个目录,每个目录又包含五个空目录,我不希望命令返回十五个元素,而只返回三个“顶级”或“第一级”目录。

如何实现?

zip
  • 1 个回答
  • 38 Views
Martin Hope
trivicious
Asked: 2023-04-20 20:08:38 +0800 CST

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

  • 12

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

folder1/
└── file1

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

 Length   Method    Size  Cmpr    Date    Time   CRC-32   Name
--------  ------  ------- ---- ---------- ----- --------  ----
       5  Stored        5   0% 2023-04-20 13:54 3bb935c6  folder1/file1
--------          -------  ---                            -------
       5                5   0%                            1 file
 Length   Method    Size  Cmpr    Date    Time   CRC-32   Name
--------  ------  ------- ---- ---------- ----- --------  ----
       0  Stored        0   0% 2023-04-20 13:54 00000000  folder1/
       5  Stored        5   0% 2023-04-20 13:54 3bb935c6  folder1/file1
--------          -------  ---                            -------
       5                5   0%                            2 files

请注意第二个文件夹中明确说明的文件夹。

这里的标准是什么?程序通常会假设这是如何处理的吗?两者之一是有利的吗?

zip
  • 1 个回答
  • 404 Views
Martin Hope
user3447014
Asked: 2022-04-09 11:04:48 +0800 CST

压缩包含 zip 文件的文件夹(在 MacOS 上不可见,除非通过 CLI 解压缩)

  • 1

我正在尝试创建一个包含 5 个 PDF 和一个附加 ZIP 文件(位于当前工作文件夹上方的文件夹中)的 ZIP 存档。这似乎有效,但仅在一定程度上有效。

例如:

$ ls -lh
total 5.0M
-rw-r--r-- 1 root root 227K Apr  8 18:53 activity.pdf
-rw-r--r-- 1 root root 2.2M Apr  8 18:53 activity1.pdf
-rw-r--r-- 1 root root 279K Apr  8 18:53 activity2.pdf
-rw-r--r-- 1 root root 761K Apr  8 18:53 activity3.pdf
-rw-r--r-- 1 root root 1.6M Apr  8 18:53 activity4.pdf

$ ls -lh ..
total 11M
-rw-r--r--  1 root root  11M Apr  5 12:16 Another_Archive.zip

要压缩前一个文件夹中存在的 5 个 PDF 文件和ZIP,我正在执行以下操作:

$ zip Final_Archive.zip *.pdf ../Another_Archive.zip 
  adding: activity.pdf (deflated 12%)
  adding: activity1.pdf (deflated 10%)
  adding: activity2.pdf (deflated 11%)
  adding: activity3.pdf (deflated 9%)
  adding: activity4.pdf (deflated 11%)
  adding: ../Another_Archive.zip (stored 0%)

现在,每当我unzip从 CLI 运行时,我都可以正确看到所有内容:

$ unzip Final_Archive.zip
Archive:  Final_Archive.zip
  inflating: activity.pdf
  inflating: activity1.pdf
  inflating: activity2.pdf
  inflating: activity3.pdf
  inflating: activity4.pdf
warning:  skipped "../" path component(s) in ../Another_Archive.zip
 extracting: Another_Archive.zip

$ ls -lh
total 31M
-rw-r--r-- 1 root root  11M Apr  5 12:16 Another_Archive.zip
-rw-r--r-- 1 root root  15M Apr  8 19:02 Final_Archive.zip
-rw-r--r-- 1 root root 227K Apr  8 18:53 activity.pdf
-rw-r--r-- 1 root root 2.2M Apr  8 18:53 activity1.pdf
-rw-r--r-- 1 root root 279K Apr  8 18:53 activity2.pdf
-rw-r--r-- 1 root root 761K Apr  8 18:53 activity3.pdf
-rw-r--r-- 1 root root 1.6M Apr  8 18:53 activity4.pdf

但是,如果我从 Mac OS 解压缩文件(只需双击 zip 文件),它会提取除文件之外的所有内容Another_Archive.zip。见下文:

在此处输入图像描述

如果我从 CLI 的 MacOS 解压缩它,它工作得非常好。这是由于 MacOS 上的取消归档过程存在某种问题,还是由于创建 zip 文件的方式存在问题?

zip
  • 1 个回答
  • 32 Views
Martin Hope
Maxfield
Asked: 2022-02-23 22:32:15 +0800 CST

对于所有 zip,并在工作目录中解压缩并保持其结构

  • 0

用这个命令

find . -name '*.zip' -exec unzip '{}' ';'

我们在 . (目录),然后将它们解压缩到当前工作目录中, 但是, 结构消失了。

/backUp/pic1/1-1.zip
/backUp/pic1/1-2.zip
/backUp/pic2/2-1.zip
/backUp/pic2/2-2.zip
/backUp/pic3/3-1.zip
/backUp/pic3/3-2.zip
/backUp/pic3/3-3.zip

Current command result:
/new/1-1
/new/1-2
/new/2-1
/new/2-2
/new/3-1
/new/3-2
/new/3-3





desired  result  
/new/pic1/1-1 
/new/pic1/1-2 
/new/pic2/2-1
/new/pic2/2-2
/new/pic3/3-1
/new/pic3/3-2
/new/pic3/3-3

在这里问,但代码不起作用 dirname 和 basename 应该在这个命令中是什么?

directory zip
  • 1 个回答
  • 70 Views
Martin Hope
Mike W
Asked: 2022-02-19 13:57:57 +0800 CST

为 Linux 解压缩命令编写正则表达式以选择要提取的文件

  • 2

我有一个调用 unzip 命令的 bash 脚本,它只需要提取其中文件路径包含子目录名称的文件,该子目录名称是 3 个特定单词之一:“a”、“apple”和“applescript” . 所以文件 /a/b/c.txt 和 /com/apple/foo.txt 都应该被提取。

我知道对于普通的 bash 命令行 glob,我可以使用类似*/{a,apple,applescript}/*.txt的东西,但这在这里不适用,因为 unzip 命令是评估 glob 的东西,而不是 bash。

所以这样的命令不起作用:unzip -oj file.zip '*/{a,apple,applescript}/*.txt'

我尝试过的一件事是依次执行 3 个单独的解压缩命令,如下所示:

unzip -oj file.zip '*/a/*.txt'
unzip -oj file.zip '*/apple/*.txt'
unzip -oj file.zip '*/applescript/*.txt'

但这不起作用,除非 zip 文件肯定包含a子目录和apple子目录,而且我不能保证会是这种情况。

完成这项工作的最佳方法是什么?有没有办法在一个 zip 命令中使用正则表达式来做到这一点?或者,在 zip 文件中并非所有 3 个子目录名称都存在的情况下,有没有办法使 3 个顺序命令起作用?

bash zip
  • 1 个回答
  • 290 Views
Martin Hope
joesan
Asked: 2021-11-04 12:28:30 +0800 CST

在一个命令中解压缩和重命名文件

  • 0

我有一个包含 CSV 的 zip 文件,我想将其解压缩到特定文件夹中,并将文件重命名为与 zip 文件名相同的名称。例如。,

我有一个名为:youtube_videos.csv.zip 的 zip 文件,我想将其解压缩到名为 target 的某个文件夹,并将该文件夹中的文件重命名为 youtube-videos.csv。我有它,但分为以下两行:

unzip datasets/youtube_videos.csv.zip -d target 
mv target/videos_data.csv target/youtube_videos.csv

有没有一种可以使用的衬垫?

zip
  • 2 个回答
  • 2202 Views
Martin Hope
Fredy31
Asked: 2021-11-03 09:16:25 +0800 CST

命令行 ZIP - 如何压缩整个文件夹,但避开存在的其他 zip?

  • 0

我的任务是更新我们的一些网站,因此,在这样做之前,我必须压缩 public_html 文件夹,以便进行备份。

问题是,public_html 有一堆其他的 ZIP,它们是我不想删除的旧备份,以防我的备份失败或出于其他原因,我们需要返回 2-3 个备份。

但是,由于它们在那里并且在每个备份中都被捕获,因此备份文件会不断增长,因为它基本上包含其中的每个以前的备份。

那么有没有办法调整 zip 命令行调用,以便它获取所有文件,除了它找到的任何 .zip 或 .gzip 文件?

command-line zip
  • 1 个回答
  • 45 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve