Так что для школьного задания мы работаем с хешами. Однако я столкнулся с проблемой, где мой файл file.txt, содержащий:

test hashes
test hashes

без кавычек не соответствует хешу от HashCalc (для windows) и http://www.md5hashgenerator.com/ оба предлагают cd7e8e88f33efb42e0a1148e92c5005b, в то время как md5sum на моем linux linux поставляется с f3c5fdf4320346eb9bd2a6b64224

head -c -1 file.txt | md5sum

Он отлично работает только с одной строкой тестовых хэшей, но со второй строкой я не могу сделать так, чтобы она совпадала.

1 ответ1

2
$ echo -ne "test hashes\ntest hashes" | md5sum                                   
f3c5fdf4320346eb9bd2a6b64235248e  -
$ echo -ne "test hashes\r\ntest hashes" | md5sum                                 
cd7e8e88f33efb42e0a1148e92c5005b  -

Это касается Unix (\n) или окончания строки DOS (\r\n).

Вы можете конвертировать окончания строк Unix в DOS с помощью unix2dos:

$ echo -ne "test hashes\ntest hashes" | unix2dos | md5sum
cd7e8e88f33efb42e0a1148e92c5005b  -

Обратной командой является dos2unix .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .