2011-07-01 20 views
0

echo -n aWord | md5をシェルに直接渡すと、PHPのmd5('aWord')と同じ結果が得られますが、ファイルからコードを呼び出すと、別の文字列が表示されます。echo -n aWord | md5が期待した結果を返さない

助けてください。

+1

動作していないシェルスクリプトの関連部分を共有できますか? – AlG

+0

使用しているファイルを表示してください。また、どのmd5コマンドを使っていますか? –

+0

シェルとスクリプトで 'echo -n'の動作が異なりますか? – pavium

答えて

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

私はコメントできませんが、コマンドラインよりもファイルから同じ結果が得られます:

$ echo -n 'aWord' | md5sum 
a72ef25b2fa8080e6e0643c967284842 - 
$ echo -n 'aWord' > file 
$ md5sum file 
a72ef25b2fa8080e6e0643c967284842 file 
関連する問題