echo -n aWord | md5没有返回预期的结果

时间:2011-07-01 11:48:48

标签: bash shell command-line

当我直接在shell中传递此行echo -n aWord | md5时,我得到了预期的结果 - 与PHP md5('aWord')相同 - 但是当我从文件中调用代码时,我会得到一个不同的字符串。

请帮忙。

2 个答案:

答案 0 :(得分:2)

如果您关注md5s:

=$ echo -n aWord | md5sum
a72ef25b2fa8080e6e0643c967284842  -

来自档案:

=$ cat test.file 
aWord

=$ md5sum test.file 
1d03663ed556e850007c886ce5ad3ade  test.file

这是因为文件中还有其他字符 - 换行符:

=$ hexdump -C test.file 
00000000  61 57 6f 72 64 0a                                 |aWord.|
00000006

答案 1 :(得分:1)

我无法发表评论,但我从文件中得到的结果与命令行相同:

$ echo -n 'aWord' | md5sum
a72ef25b2fa8080e6e0643c967284842  -
$ echo -n 'aWord' > file
$ md5sum file 
a72ef25b2fa8080e6e0643c967284842  file