我使用以下命令在 Windows 10 下创建一个多部分(每个 1G)的 7zip 存档(基本上是我的文档区域的完整备份):
7z a -r -v1g -bb -y \path\to\zips\xyzzy.7z .
这成功地为我创建了大约 38 个 1G 文件。但是,我想在之后获取存档中所有文件的列表,但我不知道该怎么做。命令:
7z l xyzzy.7z.001
返回错误:
7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
Scanning the drive for archives:
1 file, 1073741824 bytes (1024 MiB)
Listing archive: \somewhere\xyzzy.7z.001
--
Path = \somewhere\xyzzy.7z.001
Type = Split
Physical Size = 1073741824
Volumes = 1
Total Physical Size = 1073741824
Date Time Attr Size Compressed Name
------------------- ----- ------------ ------------ ------------------------
..... 1073741824 1073741824 xyzzy.7z
------------------- ----- ------------ ------------ ------------------------
1073741824 1073741824 1 files
----------
Path = xyzzy.7z
Open ERROR: Can not open the file as [7z] archive
Errors: 1
因此,底层7z
文件似乎在文件中可见.7z.001
,但它抱怨它不是一个有效的档案。
我也尝试过使用 ,-tsplit
它消除了错误,但只是显示内容为 ,而xyzzy.7z
无需深入研究该文件以查看其内容。换句话说,输出与上面的输出相同,但最后一行是以 结尾的1 files
。
为什么会这样?我的命令行参数是否错误?如何从拆分存档中获取文件列表?
答案1
请尝试使用 7-zip 文件路径上的驱动器号。例如:
7z l C:\somewhere\xyzzy.7z.001
这似乎是16.02版本的一个bug。我做了以下测试:
E:\temp>7za l \temp\archive.7z.001
7-Zip (a) [32] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
Scanning the drive for archives:
1 file, 1048576 bytes (1024 KiB)
Listing archive: \temp\archive.7z.001
--
Path = \temp\archive.7z.001
Type = Split
Physical Size = 1048576
Volumes = 1
Total Physical Size = 1048576
Date Time Attr Size Compressed Name
------------------- ----- ------------ ------------ ------------------------
..... 1048576 1048576 archive.7z
------------------- ----- ------------ ------------ ------------------------
1048576 1048576 1 files
----------
Path = archive.7z
Open ERROR: Can not open the file as [7z] archive
Errors: 1
E:\temp>7za l E:\temp\archive.7z.001
7-Zip (a) [32] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
Scanning the drive for archives:
1 file, 1048576 bytes (1024 KiB)
Listing archive: E:\temp\archive.7z.001
--
Path = E:\temp\archive.7z.001
Type = Split
Physical Size = 1048576
Volumes = 6
Total Physical Size = 5533143
----
Path = archive.7z
Size = 5533143
--
Path = archive.7z
Type = 7z
Physical Size = 5533143
Headers Size = 170
Method = LZMA2:6m
Solid = -
Blocks = 1
Date Time Attr Size Compressed Name
------------------- ----- ------------ ------------ ------------------------
2013-03-13 09:23:44 ....A 6010800 5532973 gotingeno-davideosendacommon.pdf
------------------- ----- ------------ ------------ ------------------------
2013-03-13 09:23:44 6010800 5532973 1 files
------------------- ----- ------------ ------------ ------------------------
2013-03-13 09:23:44 6010800 5532973 1 files
Archives: 1
Volumes: 6
Total archives size: 5533143
E:\temp>7za l archive.7z.001
7-Zip (a) [32] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
Scanning the drive for archives:
1 file, 1048576 bytes (1024 KiB)
Listing archive: archive.7z.001
--
Path = archive.7z.001
Type = Split
Physical Size = 1048576
Volumes = 6
Total Physical Size = 5533143
----
Path = archive.7z
Size = 5533143
--
Path = archive.7z
Type = 7z
Physical Size = 5533143
Headers Size = 170
Method = LZMA2:6m
Solid = -
Blocks = 1
Date Time Attr Size Compressed Name
------------------- ----- ------------ ------------ ------------------------
2013-03-13 09:23:44 ....A 6010800 5532973 gotingeno-davideosendacommon.pdf
------------------- ----- ------------ ------------ ------------------------
2013-03-13 09:23:44 6010800 5532973 1 files
------------------- ----- ------------ ------------ ------------------------
2013-03-13 09:23:44 6010800 5532973 1 files
Archives: 1
Volumes: 6
Total archives size: 5533143