7-Zip 提取加密 zip 中的文件,但 7z.exe 无法查看文件

问题描述 投票:0回答:1

我有一个存档文件,我想解密和解压缩,并让里面的数据在 R 中可用。经过一番尝试和错误后,我最终尝试在 R 和 7-zip 中使用系统命令来提取,然后再导入到 R 中。但是,使用 7z 命令行选项时文件提取失败。我简化了下面的所有内容,以突出显示我正在使用的 7z 请求中出现的问题。我希望有人可以提供一些指导,以提供在 R 中执行此操作的方法或使用 7-Zip 解决命令行问题。

注意:接下来的内容暂时排除 R,因为错误似乎发生在 R 之外,因此最好将其隔离到 7-Zip。

可以通过右键单击该文件,选择 7-Zip,然后选择“提取文件”来提取相关 .zip 存档文件。系统会提示输入密码,然后解压 zip 存档中的文件,不会出现任何问题。

但是,当尝试使用 e 或 x 命令使用 7-Zip 命令行 (7z) 时,它说正在提取存档,看到物理大小为 3MB 大,然后说“没有要处理的文件” 。使用的命令行是:

C:\Program Files\7-Zip>7z e "C:\TEST\EncryptedZip.zip" -p XXXXXXXXXX
注意:文件的实际密码已被删除

如果我尝试 x 选项,它会给出相同的响应。 当只是尝试列出文件时,它会给出以下内容:

C:\Program Files\7-Zip>7z l "C:\TEST\EncryptedZip.zip" -p XXXXXXXXXX

7-Zip 23.01 (x64) : Copyright (c) 1999-2023 Igor Pavlov : 2023-06-20

Scanning the drive for archives:
1 file, 3474965 bytes (3394 KiB)

Listing archive: C:\TEST\EncryptedZip.zip

--
Path = C:\TEST\EncryptedZip.zip
Type = zip
Physical Size = 3474965

   Date      Time    Attr         Size   Compressed  Name
------------------- ----- ------------ ------------  ------------------------
------------------- ----- ------------ ------------  ------------------------
                                     0            0  0 files 

到目前为止,在 StackOverflow 和其他网站上搜索“没有要处理的文件”消息的解决方案表明问题是命令中的语法错误,但我已经简化了命令字符串,但仍然没有看到任何问题。

我错过了什么或者我如何获得有关正在发生的事情的更多信息?

r zip 7zip
1个回答
0
投票

在 R 中,要提取使用 7z 压缩和加密的文件,我使用以下命令。如果您只想列出存档中的文件,请将

arg
的第一个值从
"x"
更改为
"l"

# This is a Windows path to 7z.exe,
# also works if 7z is not on the PATH system variable
cmd <- "C:/PROGRA~2/7-Zip/7z.exe"
args <- c(
  "x",            # extract
  "filename",     # archive name
  "*",            # destination name
  "-pXXXXXXXXXX"  # password
)
system2(cmd, args)
© www.soinside.com 2019 - 2024. All rights reserved.