echo -n aWord | MD5 не возвращает ожидаемый результат - PullRequest
0 голосов
/ 01 июля 2011

Когда я передаю эту строку echo -n aWord | md5 непосредственно в оболочку, я получаю ожидаемый результат - такой же, как PHP md5('aWord') - но когда я вызываю код из файла, я получаю другую строку.

Пожалуйста, помогите.

Ответы [ 2 ]

2 голосов
/ 01 июля 2011

Если вы получаете следующие 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 голос
/ 01 июля 2011

Я не могу комментировать, но из файла получаю тот же результат, что и из командной строки:

$ echo -n 'aWord' | md5sum
a72ef25b2fa8080e6e0643c967284842  -
$ echo -n 'aWord' > file
$ md5sum file 
a72ef25b2fa8080e6e0643c967284842  file
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...