A razão para os hashes serem diferentes é que echo
inclui uma nova linha no final da string de saída para torná-la bonita. Isso pode ser proibido pelo sinalizador -n
(se sua implementação de echo
oferecer suporte a ele) ou por outro programa (como printf
):
> echo "a" | md5sum
60b725f10c9c85c70d97880dfe8191b3 -
> echo -n "a" | md5sum
0cc175b9c0f1b6a831c399e269772661 -
> printf "a" | md5sum
0cc175b9c0f1b6a831c399e269772661 -