Answers:
ඔබටත් මේ වගේ දෙයක් කියන්න පුළුවන්:
~$ echo -n Welcome | md5sum
83218ac34c1834c26781fe4bde918ee4 -
එය මූලික වශයෙන් ඇන්සොටිබ් විස්තර කළ ආකාරයටම කරයි, නමුත් සමහර විට එය ටිකක් සරල ය.
83218ac34c1834c26781fe4bde918ee4 -
-n
අනිවාර්ය වේ. එය නොමැතිව, ඔබගේ හෑෂ් නව රේඛා අක්ෂරයට ඇතුළත් වන බැවින් එය සම්පූර්ණයෙන්ම වැරදිය.
-
අවසානයේදී මම නොසලකා හැරිය හැක්කේ කෙසේද? fjfmessier
ඉතා සරලයි, එය stdin පිළිගනී, එබැවින්
md5sum <<<"my string"
කවචය විසින් එකතු කරන ලද නව රේඛාව පසුපස යාම වළක්වා ගැනීම සඳහා:
printf '%s' "my string" | md5sum
<<<"
ස්ක්රිප්ටයක නළය භාවිතා කිරීමට මම සුදුසුය ; echo string
විධාන රේඛාව සඳහා ජය ගනී. හොඳට කලා.
printf
නිවැරදිව භාවිතා කිරීම සඳහා +1 . ඔබට එය නොමැතිව මුදල ලබා ගැනීමට අවශ්ය නම් -
, දමන්න | cut -d ' ' -f 1
. උදාහරණ භාවිතය:sum=$(printf '%s' 'some string' | md5sum | cut -d ' ' -f 1)
<<<
ක්රියාකරු සහ printf
ක්රියාකාරිත්වය md5 හෑෂ් සඳහා සම්පූර්ණයෙන්ම වෙනස් ප්රති results ල ලබා දෙයි! printf හි ප්රති result ලය නිවැරදි වුවද!
<<<
ක්රියාකරු භාවිතා කරමින් md5sum වෙත නව රේඛාවක් යවන බව පෙනේ !
$ echo -n 123456 | md5sum | awk '{print $1}'
e10adc3949ba59abbe56e057f20f883e
ඔබට ෂෙල් ස්ක්රිප්ට් එකක් සෑදිය හැකිය.
උදාහරණයක් ලෙස, ස්ක්රිප්ට් නම md5.sh:
#!/bin/bash
echo -n $1 | md5sum | awk '{print $1}'
අවසර ක්රියාත්මක කිරීම:
chmod +x md5.sh
ඉන්පසු:
$ md5.sh 123456
e10adc3949ba59abbe56e057f20f883e
ඔබේ පද්ධතිය මැකෝස් නම්. ඔබට මෙම ස්ක්රිප්ට් වෙනස් කිරීමට අවශ්යයි:
$ echo -n 123456 | md5 | awk '{print $1}'
e10adc3949ba59abbe56e057f20f883e
cut -d ' ' -f 1
md5() { echo -n $1 | md5sum | awk '{print $1}'; }
.bashrc හි ශ්රිතයක් නිර්මාණය කළ අතර පසුව මට $ md5 test
විධාන රේඛාවේ භාවිතා කළ හැකිය . පිළිතුරට ස්තූතියි
awk
විධානය:'$0=$1'
openssl md5 filename
openssl sha1 filename
නූල් පයිප්ප සඳහා ප්රතිරාවය භාවිතා කරමින් අන්තර්ගතය
echo -n 123456 | openssl md5
කිසිදු තර්කයක් නොමැතිව md5sum ධාවනය කිරීමෙන් එය පර්යන්තයෙන් ආදානය කියවීමට හේතු වේ. ඔබට අවශ්ය ඕනෑම දෙයක් ටයිප් කරන්න හෝ අලවන්න, ඔබ ctrl-d
අවසන් වූ පසු ආදානය අවසන් කිරීමට ඔබන්න .
ctrl+d
එය ක්රියාත්මක වීමට දෙවරක් එබිය යුතුය.
--help
ෆෝ සඳහා මගේ ඉක්මන් සිදුරෙන් md5sum
පෙන්නුම් කරන්නේ මෙම විධානය:
md5sum -
එවිට සරල ආදානය සඳහා විමසුමක් ලබා දෙනු ඇත. කිසියම් පෙළක් ආදානය කර Enterඉන්පසු Ctrl+ භාවිතා කර පසුව + Dගොනුවේ අවසානය md5sum
දැක්වීමට ඔබ ඇතුලත් කළ අමු පා of යේ MD5 පිට කිරීමට හේතු වේ (ඒ ඇතුළුව Enterඑය CR, IIRC ය).
ටයිප් කිරීමට අඩු සහ නල මාර්ගයක් නොමැත! ඔබේ සාමාන්ය මුරපදය ෂෙල් ඉතිහාසයේ සටහන් වීම වළක්වා ගන්න! වෝ!
ඔබට පසුපස සී.ආර් අවශ්ය නොවන්නේ නම් (සාමාන්යයෙන් ඔබට මුරපදයක් හැෂ් කිරීමට අවශ්ය නම් එය එසේ වේ), + ට Enterපෙර පහර Ctrlනොදෙන්න D, ඒ වෙනුවට දෙවරක් Ctrl+ ඇතුලත් Dකරන්න.
මෙම ගැටලුව පිළිබඳව ඔබ දැනගත යුතු කරුණු 2 ක් ඇති බව මගේ පිටපත් වල මට පෙනී ගියේය.
echo "$myvariable"
හෝ echo -n "$myvariable"
එහෙත් ඔබ හැම විටම නූල් සඳහා doubleqoutes භාවිතා කළ යුතු අතර සෑම විටම එකම ක්රමය භාවිතා කරන්න. නැතිනම් දේවල් නොගැලපේ.නිමැවුමේ ඔබට උදාහරණයේ පෙන්වා ඇති පරිදි සෑම විටම පසුපස අවකාශයක් සහ ඉරක් ලැබේ:
$ echo -n Welcome | md5sum
7803ffcaea43bb81a439fde13b29bc35 -
එයින් මිදීමට සහ කේතය සමඟ පමණක් සිටීමට 7803ffcaea43bb81a439fde13b29bc35
, කරන්න:echo "$myvariable" | md5sum | cut -d" " -f1
-n
වැරදි md5 ට තුඩු දෙන නව රේඛාව ප්රතිදානය කිරීමෙන් වළක්වා ගැනීමට මෙහි පරාමිතිය අමතක නොකරන්න :echo -n $myvariable | md5sum | cut -d" " -f1
මෙය කිරීමට බොහෝ උදාහරණ ඇත, නමුත් ඒවායින් සමහරක් සමාන නොවේ, මන්ද ඒවායින් සමහරක් නව රේඛාව පැහැදිලිව හෝ ව්යංගයෙන් ඇතුළත් කර ඇති අතර තවත් සමහරක් එසේ නොවේ.
නව රේඛාව ඇතුළත් වන හා නැති ජනප්රිය ක්රම අතුරින් පැහැදිලිව සඳහන් කිරීමට මම කැමැත්තෙමි.
නව රේඛාව (නිවැරදි) නොමැතිව md5 හැෂ් ගණනය කිරීම සඳහා උදාහරණ කිහිපයක් මෙන්න :
පෙළ සහිත ගොනුවක් භාවිතා කිරීම:
$ echo -n "test" > test.txt
$ wc test.txt
0 1 4 test.txt
$ md5sum test.txt
098f6bcd4621d373cade4e832627b4f6 test.txt
සටහන: -n
දී echo
මාර්ගයෙන්: "නෑ ප්රතිදානය අගින් ඇද නව පේළියකට යොමු කිරීමේ අක්ෂරය කරන්න".
පේළිගත කිරීම echo
සමඟ භාවිතා කිරීම -n
:
$ echo -n "test" | md5sum
098f6bcd4621d373cade4e832627b4f6 -
භාවිතා කිරීම printf
:
$ printf "%s" "test" | md5sum
098f6bcd4621d373cade4e832627b4f6 -
එකම md5sum
විධානය භාවිතා කිරීම:
(අපි ලියමු md5sum
, Enterනූල් ලියන්න test
, ඉන්පසු ද්විත්ව සංයෝජනය Ctrl+ ඔබන්න d)
$ md5sum
test098f6bcd4621d373cade4e832627b4f6 -
md5sum -
විධානය භාවිතා කිරීම :
(අපි ලියමු md5sum -
, Enterනූල් ලියන්න test
, ඉන්පසු ද්විත්ව සංයෝජනය Ctrl+ ඔබන්න d)
$ md5sum -
test098f6bcd4621d373cade4e832627b4f6 -
නව රේඛාව පසුපසින් ඇති එම්ඩී 5 හැෂ් ගණනය කිරීම සඳහා උදාහරණ කිහිපයක් මෙන්න (SO NOT CORRECT):
පෙළ සහිත ගොනුවක් භාවිතා කිරීම:
$ echo "test" > test_n.txt
$ wc test_n.txt
1 1 5 test_n.txt
$ md5sum test_n.txt
d8e8fca2dc0f896fd7cb4cb0031ba249 test_n.txt
පේළිගත echo
කිරීමකින් තොරව භාවිතා කිරීම -n
:
echo "test" | md5sum
d8e8fca2dc0f896fd7cb4cb0031ba249 -
මෙහි නූල් භාවිතා කිරීම :
$ md5sum <<< "test"
d8e8fca2dc0f896fd7cb4cb0031ba249 -
පෙළ ලිවීමෙන් පසු යතුරක් md5sum
සහිතව පමණක් විධානය භාවිතා Enterකිරීම:
(අපි ලියමු md5sum
, Enterනූල් test
ඔබන්න, පසුව agaien ඔබන්න Enterසහ එක් වරක් සංයෝජනය Ctrl+ d)
$ md5sum
test
d8e8fca2dc0f896fd7cb4cb0031ba249 -
පෙළ ලිවීමෙන් පසු md5sum -
විධානය භාවිතා කරන නමුත් Enterයතුර සමඟ :
(අපි ලියමු md5sum -
, Enterනූල් test
ඔබන්න, පසුව agaien ඔබන්න Enterසහ එක් වරක් සංයෝජනය Ctrl+ d)
$ md5sum -
test
d8e8fca2dc0f896fd7cb4cb0031ba249 -
md5 -s abcdefg