如何在解压 zip 文件时输入日文编码的密码?

如何在解压 zip 文件时输入日文编码的密码?

Zip 文件在此处:https://sp.seiga.nicovideo.jp/seiga/im4274119 https://bowlroll.net/file/50417

它包含另一个 zip 文件 Taboo.zip。密码是“ジークハイル”,但采用的是日语编码。

$ unzip -P "$(echo ジークハイル|iconv -f utf8 -t cp932)" 'Taboo.zip'
Archive:  Taboo.zip
  inflating: Taboo/gz1x.bmp          
  error:  invalid compressed data to inflate
$ unzip -P wrong-password 'Taboo.zip'
Archive:  Taboo.zip
   skipping: Taboo/gz1x.bmp          incorrect password

密码正确,但还有另一个错误,可能是这个:https://stackoverflow.com/a/50129033

在出现此错误的其他情况下,我发现文件滚动器或 Nautilus 或 Nemo 的右键单击提取选项能够提取这些文件;我认为在这些情况下,错误来自于 zip 文件中有一个大小为 0 的文件,而解压缩会处理到该点为止的所有内容。

我只是不明白如何在这些其他程序中使用非 Unicode 密码。这会将位序列放入剪贴板:

 echo ジークハイル|iconv -f utf8 -t cp932|xclip -i -selection clipboard

但无法将其粘贴到 GUI 密码提示中(也无法使用 gnome-terminal 和 bash 将其粘贴到 unzip 的命令行提示中)。可以验证它是否已正确存储:

$ xclip -o -selection clipboard
�W�[�N�n�C��

只是 ctrl-V(或 shift-ctrl-V,带有终端)粘贴不起作用。

我也尝试设置环境变量“LANG=ja_JP.UTF8 file-roller Taboo.zip”,但我认为它仍然在内部使用某种类型的 Unicode,包括密码提示,因为在提示符下输入“ジークハイル”仍然不起作用。

那么,是否有一个程序可以让您输入密码作为命令行选项,并且与 unzip 不同,可以让您忽略 zip 文件中的错误?

答案1

仅处理invalid compressed data to inflate错误,我不认为您链接的问题(https://stackoverflow.com/a/50129033) 与此相关。如下所示的内部结构Taboo.zip看起来正常。没有出现意外的数据描述符。这表明 zip 文件已损坏。

$ zipdetails Taboo.zip 

0000 LOCAL HEADER #1       04034B50
0004 Extract Zip Spec      14 '2.0'
0005 Extract OS            00 'MS-DOS'
0006 General Purpose Flag  0000
0008 Compression Method    0000 'Stored'
000A Last Mod Time         451FACBD 'Sun Aug 31 22:37:58 2014'
000E CRC                   00000000
0012 Compressed Length     00000000
0016 Uncompressed Length   00000000
001A Filename Length       0006
001C Extra Length          0000
001E Filename              'Taboo/'

0024 LOCAL HEADER #2       04034B50
0028 Extract Zip Spec      14 '2.0'
0029 Extract OS            00 'MS-DOS'
002A General Purpose Flag  0001
     [Bit  0]              1 'Encryption'
     [Bits 1-2]            0 'Normal Compression'
002C Compression Method    0008 'Deflated'
002E Last Mod Time         451FABEC 'Sun Aug 31 22:31:24 2014'
0032 CRC                   E90636CA
0036 Compressed Length     00005358
003A Uncompressed Length   00C00036
003E Filename Length       000E
0040 Extra Length          0000
0042 Filename              'Taboo/gz1x.bmp'
0050 PAYLOAD

53A8 CENTRAL HEADER #1     02014B50
53AC Created Zip Spec      3F '6.3'
53AD Created OS            00 'MS-DOS'
53AE Extract Zip Spec      14 '2.0'
53AF Extract OS            00 'MS-DOS'
53B0 General Purpose Flag  0000
53B2 Compression Method    0000 'Stored'
53B4 Last Mod Time         451FACBD 'Sun Aug 31 22:37:58 2014'
53B8 CRC                   00000000
53BC Compressed Length     00000000
53C0 Uncompressed Length   00000000
53C4 Filename Length       0006
53C6 Extra Length          0024
53C8 Comment Length        0000
53CA Disk Start            0000
53CC Int File Attributes   0000
     [Bit 0]               0 'Binary Data'
53CE Ext File Attributes   00000010
     [Bit 4]               Directory
53D2 Local Header Offset   00000000
53D6 Filename              'Taboo/'
53DC Extra ID #0001        000A 'NTFS FileTimes'
53DE   Length              0020
53E0   Reserved            00000000
53E4   Tag1                0001
53E6   Size1               0018
53E8   Mtime               01CFC51864BBECD5 'Sun Aug 31 13:37:57
                           2014 695816500ns'
53F0   Atime               01CFC51864BBECD5 'Sun Aug 31 13:37:57
                           2014 695816500ns'
53F8   Ctime               01CFC518536C84F2 'Sun Aug 31 13:37:28
                           2014 654155400ns'

5400 CENTRAL HEADER #2     02014B50
5404 Created Zip Spec      3F '6.3'
5405 Created OS            00 'MS-DOS'
5406 Extract Zip Spec      14 '2.0'
5407 Extract OS            00 'MS-DOS'
5408 General Purpose Flag  0001
     [Bit  0]              1 'Encryption'
     [Bits 1-2]            0 'Normal Compression'
540A Compression Method    0008 'Deflated'
540C Last Mod Time         451FABEC 'Sun Aug 31 22:31:24 2014'
5410 CRC                   E90636CA
5414 Compressed Length     00005358
5418 Uncompressed Length   00C00036
541C Filename Length       000E
541E Extra Length          0024
5420 Comment Length        0000
5422 Disk Start            0000
5424 Int File Attributes   0000
     [Bit 0]               0 'Binary Data'
5426 Ext File Attributes   00000020
     [Bit 5]               Archive
542A Local Header Offset   00000024
542E Filename              'Taboo/gz1x.bmp'
543C Extra ID #0001        000A 'NTFS FileTimes'
543E   Length              0020
5440   Reserved            00000000
5444   Tag1                0001
5446   Size1               0018
5448   Mtime               01CFC51779A5312D 'Sun Aug 31 13:31:23
                           2014 282257300ns'
5450   Atime               01CFC51838733796 'Sun Aug 31 13:36:43
                           2014 399567000ns'
5458   Ctime               01CFC51838733796 'Sun Aug 31 13:36:43
                           2014 399567000ns'

5460 END CENTRAL HEADER    06054B50
5464 Number of this disk   0000
5466 Central Dir Disk no   0000
5468 Entries in this disk  0002
546A Total Entries         0002
546C Size of Central Dir   000000B8
5470 Offset to Central Dir 000053A8
5474 Comment Length        0000
Done

相关内容