MacOS এ কোনও শ 256sum নেই


17

আমি sha256sumহাই সিয়েরা ব্যবহার করার চেষ্টা করেছি ; আমি এটির সাথে এটি ইনস্টল করার চেষ্টা করেছি MacPorts:

sudo port install sha256sum

এটা কাজ করে না.

কি করো?


ম্যাকোএসের সমস্ত বিএসডি-র মতো একটি নেটিভ md5ইউটিলিটি রয়েছে।
কুসালানন্দ

উত্তর:


38

কোর ইউটিলস প্যাকেজটি ব্রিউ সূত্র হিসাবে প্রকাশিত হয় । সুতরাং যদি আপনি ব্রিউ ইনস্টল করেন তবে আপনি কেবল চালাতে পারেন:

brew install coreutils

তারপরে যোগ PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"করুন ~/.bashrc, চালান source ~/.bashrcএবং আপনার কাজ শেষ।


U&L এ আপনার প্রথম উত্তরের জন্য অভিনন্দন। আমি ম্যাকপোর্টসকে ব্রিউয়ের পক্ষে পছন্দ করি তবে হ্যাঁ, এটি একটি কার্যকর বিকল্প।
রুই এফ রিবেইরো

1
এটি গ্রহণযোগ্য উত্তর হওয়া উচিত!
মিল্কনকুকিজ

1
@ মিল্কনকোজিৎ যদি কেউ আমাকে বোঝাতে পরিচালিত করেন যে ম্যাকপোর্টগুলি প্রশ্নের সঠিক উত্তর কেন হওয়া উচিত কেন আমি সব কানের সমাধান solution
রুই এফ রিবেইরো

17

কিছুটা তদন্ত করার পরে, আমি গিটিহাবের একটি অপ্রাসঙ্গিক সফ্টওয়্যারটিতে টিকিট পেয়েছি sha256sum কমান্ডটি ম্যাকসএক্সএক্সে অনুপস্থিত , বেশ কয়েকটি সমাধান সহ:

  • কোর্টিল ইনস্টল করা হচ্ছে

    sudo port install coreutils
    

    এটা তোলে ইনস্টল sha256sum/opt/local/libexec/gnubin/sha256sum

  • অন্য সম্ভাব্য সমাধান হিসাবে, ব্যবহার করে openssl:

function sha256sum() { openssl sha256 "$@" | awk '{print $2}'; }
  • shasumম্যাকওএসের নেটিভ কমান্ডটি ব্যবহার করে এখনও অন্য একজন :
function sha256sum() { shasum -a 256 "$@" ; } && export -f sha256sum

1

মিগ 82 এর পরিপূরক উত্তর, যার উত্তরটি কোরিউটিলগুলিতে সমস্ত এক্সিকিউটেবলের জন্য জি-উপসর্গ পরিচালনা করে। আমি একটি দৃly়ভাবে স্কোপযুক্ত সমাধান অফার করি।

কোরটিলস ইনস্টল করার পরে

brew install coreutils

ফলাফলগুলি ls /usr/local/bin/gsha* জি-প্রিফিক্সড এক্সিকিউটেবলের তালিকাভুক্ত করবে:

  • /usr/local/bin/gsha1sum
  • /usr/local/bin/gsha224sum
  • /usr/local/bin/gsha256sum
  • /usr/local/bin/gsha384sum
  • /usr/local/bin/gsha512sum

সমাধানটি হ'ল আপনি যে কোনও প্রি-প্রিক্সড নাম ব্যবহার করতে চান তার সাথে একটি প্রতীকী লিঙ্ক তৈরি করা (বা বিএসডি এক্সিকিউটেবলের উপর নির্ভরশীল এমন কিছু প্রোগ্রাম ভাঙার ঝুঁকি নেওয়া এবং হোম প্রিফিক্স হোম গ্রাবিউ বিকল্পটি ব্যবহার করুন)

উদাহরণ

shaarray=(\
/usr/local/bin/gsha1sum
/usr/local/bin/gsha224sum
/usr/local/bin/gsha256sum
/usr/local/bin/gsha384sum
/usr/local/bin/gsha512sum
)
function installsha() {
  for i in "${shaarray[@]}"
  do
    printf "$i\n" | perl -pe 'printf $_; s/gsha/sha/' | xargs -n 2 ln -s
  done
}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.