如何在不解压的情况下获取 zip 中所有文件的 md5sum
How can i get md5sum for all files inside zip without extracting
有没有什么方法可以在不解压 zip 的情况下为 all/anyone 文件获取 md5sum?
我可以使用 unzip <.zip> 提取所需的文件
但我需要在不解压缩 zip 的情况下获取 md5sum。
这可能不是您要找的东西,但它会让您更接近。您不会提取整个 zip,而是提取一个文件以将其通过管道传输到 md5sum 以获得校验和。如果不读取文件内容,md5sum 将无法生成哈希。
假设您有 3 个文件使用此 MD5:
b1946ac92492d2347c6235b4d2611184 a.txt
591785b794601e212b260e25925636fd b.txt
6f5902ac237024bdd0c176cb93063dc4 c.txt
您使用 zip final.zip a.txt b.txt c.txt
将它们压缩到一个文件中
列出文件时,您会看到有 3 个文件。
unzip -l final.zip
Archive: final.zip
Length Date Time Name
--------- ---------- ----- ----
6 2021-08-08 17:20 a.txt
6 2021-08-08 17:20 b.txt
12 2021-08-08 17:20 c.txt
--------- -------
24 3 files
要在不提取整个 zip 的情况下获取每个文件的 MD5,您可以这样做:
unzip -p final.zip a.txt | md5sum
b1946ac92492d2347c6235b4d2611184 -
unzip -p final.zip b.txt | md5sum
591785b794601e212b260e25925636fd -
unzip -p final.zip c.txt | md5sum
6f5902ac237024bdd0c176cb93063dc4 -
备选
您可以 md5sum *.txt > checksums
获取所有文件的哈希值并将它们存储在校验和文件中。将其添加到 zip 中,以便在将文件添加到压缩文件时知道每个文件的 md5。
有没有什么方法可以在不解压 zip 的情况下为 all/anyone 文件获取 md5sum?
我可以使用 unzip <.zip> 提取所需的文件
但我需要在不解压缩 zip 的情况下获取 md5sum。
这可能不是您要找的东西,但它会让您更接近。您不会提取整个 zip,而是提取一个文件以将其通过管道传输到 md5sum 以获得校验和。如果不读取文件内容,md5sum 将无法生成哈希。
假设您有 3 个文件使用此 MD5:
b1946ac92492d2347c6235b4d2611184 a.txt
591785b794601e212b260e25925636fd b.txt
6f5902ac237024bdd0c176cb93063dc4 c.txt
您使用 zip final.zip a.txt b.txt c.txt
列出文件时,您会看到有 3 个文件。
unzip -l final.zip
Archive: final.zip
Length Date Time Name
--------- ---------- ----- ----
6 2021-08-08 17:20 a.txt
6 2021-08-08 17:20 b.txt
12 2021-08-08 17:20 c.txt
--------- -------
24 3 files
要在不提取整个 zip 的情况下获取每个文件的 MD5,您可以这样做:
unzip -p final.zip a.txt | md5sum
b1946ac92492d2347c6235b4d2611184 -
unzip -p final.zip b.txt | md5sum
591785b794601e212b260e25925636fd -
unzip -p final.zip c.txt | md5sum
6f5902ac237024bdd0c176cb93063dc4 -
备选
您可以 md5sum *.txt > checksums
获取所有文件的哈希值并将它们存储在校验和文件中。将其添加到 zip 中,以便在将文件添加到压缩文件时知道每个文件的 md5。