如何在Linux下解压缩“.7z”文件?急啊!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Linux下解压缩“.7z”文件?急啊!相关的知识,希望对你有一定的参考价值。

如何在Linux下解压缩“.7z”文件? 我知道是7zip生成的.7zip是装在NT核心的系统上的,不是装在Linux上的.Linux下怎么解开?

参考技术A .7z是新软件7Zip特有的压缩格式。当然是安装7Zip了。
汗……7z是开源项目,但linux下只有命令行版本。
装好后输入
#7z
--help
查看选项和参数
下边是示例:
7z
e
archive.zip
#e选项表示释放
从压缩档案
archive.zip
中释放所有文件到当前文件夹。
7z
e
archive.zip
-o/home/xx/soft/
*.cpp
从压缩档案
archive.zip
中释放
*.cpp
文件到
/home/xx/soft
文件夹。

在不丢失原始创建日期的情况下解压缩多个文件[重复]

【中文标题】在不丢失原始创建日期的情况下解压缩多个文件[重复]【英文标题】:Unzipping multiple file without loosing the original creation date [duplicate] 【发布时间】:2021-12-30 12:07:01 【问题描述】:

按照here 的说明,我正在使用 python 解压缩数百个压缩文件。

import os
import zipfile

base_dir = '/users/me/myFile' # absolute path to the data folder
extension = ".zip"

os.chdir(base_dir)  # change directory from working dir to dir with files


def unpack_all_in_dir(_dir):
    for item in os.listdir(_dir):  # loop through items in dir
        abs_path = os.path.join(_dir, item)  # absolute path of dir or file
        if item.endswith(extension):  # check for ".zip" extension
            file_name = os.path.abspath(abs_path)  # get full path of file
            zip_ref = zipfile.ZipFile(file_name)  # create zipfile object
            zip_ref.extractall(_dir)  # extract file to dir
            zip_ref.close()  # close file
        elif os.path.isdir(abs_path):
            unpack_all_in_dir(abs_path)  # recurse this function with inner folder


unpack_all_in_dir(base_dir)

当我手动解压一个文件时,它会得到它的原始修改日期,而当我用代码解压时,我会丢失这个 - 修改日期变成现在的日期。

知道保留原始创建日期的方法吗?

【问题讨论】:

请在此处添加代码示例,以及 2-3 个参考 .osm 文件供我们重新创建问题。 这有帮助吗?从@Expurple 所写的内容来看,这似乎对所有类型的文件都是一个挑战,不仅是 OSM 是的,你是对的,Expurple 共享的线程已有 5 年历史,并且在 zip 文件实现中没有任何更改。你将不得不四处乱窜。该线程具有您可以参考的有效解决方案。 【参考方案1】:

我不太了解zipfile,但根据this thread about modification date,保留元数据很痛苦。

您可以将一些 CLI 归档程序作为子进程调用,但您需要确保它已安装在目标系统上。实际上,我不得不将 7zip 与我的脚本捆绑一次,因为 Python 库(甚至第三方库)存在一些问题

【讨论】:

没那么痛。【参考方案2】:

实际上手动打开多个 zip 文件会保留日期,至少在 macOS 上是这样。 搜索需要解压的文件,选择->打开。

【讨论】:

以上是关于如何在Linux下解压缩“.7z”文件?急啊!的主要内容,如果未能解决你的问题,请参考以下文章

linux下如何用7za命令将某个7z压缩包解压?

如何打开7z文件?

Linux下解压缩

如何读取用 7z 压缩的文本文件?

7z.001,7z.002这样的文件如何解压

ubuntu下如何安装7z压缩工具?