关于bash:将散列函数的输出分配给变量

Assign the output of a hashing function to a variable

本问题已经有最佳答案,请猛点这里访问。

我需要自动创建sha512散列。我对bash脚本编写还比较陌生,我读过的任何东西都没有帮到我很大的忙。

这行给出了正确的哈希值,没有给$hashed赋值。

1
echo -n thingToHash | openssl dgst -sha512 -out $hashed;

这一行给出了错误的哈希值,也没有给$hashed赋值。

1
$hashed= thingToHash | openssl dgst -sha512;

我还尝试过其他一些类似的方法。


给变量赋值:var=$(app_a | app_b)

美元符号仅用于读取值。

在你的情况下:

hashed=$(echo"blah" | openssl dgst -sha512)

然后读取散列值:

echo $hashed