Dlaczego mój skrót wiersza polecenia różni się od wyników mieszania online MD5?


21

Na komputerze Mac OS X 10.5 (Leopard) PowerPC, jeśli to zrobię:

echo „cześć” | md5
w wierszu polecenia wynik to:

b1946ac92492d2347c6235b4d2611184

Ale jeśli wejdę do jednej z internetowych witryn z skrótami MD5, takich jak http://md5online.net/ , otrzymam:

5d41402abc4b2a76b9719d911017c592

czy robię coś źle? Jeśli chcę korzystać z MD5 w podróży, jak mogę się upewnić, że to, co otrzymuję w wierszu poleceń, zgadza się z narzędziami online md5?


Działa dla mnie w systemie Windows z Total Commander tworzącym sumę kontrolną MD5. Taki sam jak wersja online.
Snark,

Dzięki Snark. Rudedog rozwiązał problem podczas używania md5 w wierszu poleceń, przynajmniej dla systemów POSIX. Daj mu +1, jeśli możesz. Jestem za nowy
pellea72,

Odpowiedzi:


40

Kiedy echo z wiersza poleceń, md5 oblicza sumę 6 znaków - h, e, l, l, o plus nowa linia. Tekst wprowadzany do witryny nie ma nowego wiersza.

Spróbuj zrobić

echo -n hello | md5

i da ci to, czego oczekujesz. -N informuje echo, aby nie wyświetlało nowego wiersza.


Ups Nie zauważyłem znacznika „-n”. Masz rację Rudedog. To się udało. Dzięki.
pellea72,

3

Możesz także użyć printf zamiast echa, co automatycznie pomija znak nowej linii:

printf hello | md5

Lub nawet:

printf "hello" | md5

2

b1946ac92492d2347c6235b4d2611184 ist md5 tylko łańcucha

hello

5d41402abc4b2a76b9719d911017c592 ist the md5 of

hello

CR + LF

CR + LF to nowa linia systemu Windows.


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.