LinuxForum.Fans
Тема

[решено] md5sum неправильный вывод для значения переменной

Автор: boot2k3 11 сообщений 1508 просмотров
14.03.2015 15:54 #417747

Подскажите пожалуйста, в чем подвох?

text
#!/bin/bash
cnt=232666
cnt_md5=$(echo -n $cnt | md5sum | cut -c 1-32)
cnt1_md5=$(echo -n "232666" | md5sum | cut -c 1-32)
echo "cnt_md5            $cnt_md5"
echo "cnt1_md5 right     $cnt1_md5"

вывод соответствующий, причем правильно второе значение
cnt_md5 501f188764a73da1a763e7e7c0b25e75
cnt1_md5 right 6d9d06e2287df9bca4f5a2eb897d8ab4

Как мне сделать, чтобы выводило правильное cnt_md5? Корректное значение: cnt1_md5

РЕШЕНИЕ

14.03.2015 16:33 · отредактировано #417750

Чем качали? Ошибка - явная.
А что прикалываться со скриптами? Не проще так:
md5sun ....&& cat md5 (Ну если сумму заранее запишете на листочек) :)

14.03.2015 16:47 · отредактировано #417755

А при чем тут чем качал, это не файл?
Задача такая, что имеется определенный текст(циферно буквенный), кт. я хочу вписать в переменную и для этого текста(из переменной) получить md5 hash
Но получается так, что если вычислять для текста напрямую, то получается правильный результат, а если для текста из переменной, то неправильный.

14.03.2015 16:53 #417757

Ладно. а md5 файла - Вы знаете?

14.03.2015 17:09 #417762
mvt написал:
Ладно. а md5 файла - Вы знаете?

Объясните, зачем нам какой-то там файл нужен? Не вижу связи с вопросом

14.03.2015 17:20 #417764

Мне? Да нужны некторые файлы, нужна именно их целостность. Вот я и проверяю всегда md5 :)

14.03.2015 18:40 #417776

А мне для другой цели надо, чтобы пройти аутентификацию. Там для кукизов используется эта гадость
http://linuxforum.ru/viewtopic.php?id=37979

14.03.2015 18:50 #417777

У меня всё совпало
GNU bash, version 4.3.33(1)-release (x86_64-redhat-linux-gnu)

14.03.2015 18:57 #417778

Тоже всё совпало.
GNU bash, version 4.2.53(1)-release (i586-suse-linux-gnu)

14.03.2015 19:16 · отредактировано #417785

хм, странно
попробую тогда обновить bash

не помогло
GNU bash, version 4.3.33(1)-release (mipsel-unknown-linux-gnu)

в чем может еще дело быть?
можно ваш код для проверки?
md5sum тоже обновил до последнего, все равно суммы различаются :(

14.03.2015 22:51 #417807

Всем спасибо.
Разобрался, первоначальный формат скрипта был неправильным, не unix-овый в итоге и функция echo -n выполнялась с доп символом ^M

Войдите или зарегистрируйтесь, чтобы ответить.