使用gnuparallel同时计算哈希值

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

我需要计算 AWS S3 中保存的一个非常大的文件的 SHA256 和 SHA512 哈希值。我需要阻塞处理,直到两个计算都完成,并尝试使用 gnu parallel 来做到这一点。我不想从本地 S3 复制文件,而只想流式传输它。这是我得到的代码:

aws s3 cp s3://bucket-name/large-file - \
| parallel -j2 --halt now,fail=1 --pipe --keep-order --will-cite \
"sha256sum >/tmp/sha256.txt; sha512sum >/tmp/sha512.txt" 

这不会出错,但生成的哈希值不正确(例如与运行时看到的结果进行比较

aws s3 cp s3://bucket-name/large-file - | shasum256
)。

理想情况下,我希望

parallel
产生 2 个作业来计算每个哈希和块,直到它们都完成(这就是我默认相信的
parallel
)。我还只想从 S3 流式传输一次文件(不是一次为 256,然后又为 512)。

amazon-s3 hash sha256 gnu-parallel sha512
1个回答
0
投票

我手头没有Linux机器,但我认为这将生成一次50个数字的序列,但同时计算字符数和行数:

seq 50 | parallel -v --tee --pipe ::: "wc -l" "wc -c"
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.