ব্যাশ প্রম্পট থেকে সহজে র্যান্ডম নম্বর জেনারেট করা যায়, যা ভেরিয়েবল সেট করতে বা স্ক্রিপ্টে ব্যবহার করা যায়। টেবলটপ RPG থেকে সিকিউরিটি চেক পর্যন্ত কাজে লাগে। এক লাইন কোডে সম্ভব। মনে রাখবেন, সিম্পল নম্বর জেনারেটার ক্র্যাকাররা বাইপাস করতে পারে, তবে পাসওয়ার্ড/কোড জেনারেশনে উপকারী।
টার্মিনাল খুলুন: Ctrl+Alt+T বা Super+T, অথবা ড্যাশ/মেনু থেকে। ভার্চুয়াল টার্মিনালের জন্য Ctrl+Alt+F1-F6।
পদ্ধতি ১: পুরো র্যান্ডম বাইট বেছে নেওয়া
১ থেকে ২৫৬ এর মধ্যে র্যান্ডম নম্বর পেতে:
od -An -N1 -tu1 /dev/urandom
/dev/random বদলে /dev/urandom ব্যবহার করুন, অন্যথায় অন্য প্রোগ্রামের র্যান্ডম সিড ব্লক হতে পারে। ভেরিয়েবলে সেট করতে:
ranNum=$(($(od -An -N1 -tu1 /dev/urandom)))
এটি ranNum-এ ১-২৫৬ এর মধ্যে একটি নম্বর সেট করবে। যেকোনো বৈধ ভেরিয়েবল নাম ব্যবহার করা যায়।
পদ্ধতি ২: ১ থেকে যেকোনো সংখ্যা পর্যন্ত র্যান্ডম নম্বর
echo $[RANDOM%40+1] দিয়ে ১-৪০ এর মধ্যে নম্বর প্রিন্ট হবে। ৪০-এর জায়গায় যেকোনো সংখ্যা দিন। ১-১০ এর জন্য:
ranNum=$[RANDOM%10+1]
অপার ব্যালু ইনক্লूसিভ (১০ ভ্যালিড)। C/C++ এর মত -1 ব্যবহার করবেন না, অপ্রত্যাশিত ফলাফল আসবে।
পদ্ধতি ৩: একক র্যান্ডম বিট (০ বা ১)
ranNum=$(($(od -An -N1 -i /dev/urandom) % 2))
এটি /dev/urandom- থেকে নেওয়া নম্বর কনজ갔다 অড্ডের ওপর ভিত্তি করে ০ বা ১ সেট করবে। বাইনারি লজিকের জন্য উপযোগী।
আরও র্যান্ডম চাইলে /proc/sys/kernel/random ব্যবহার করুন:
ranNum=$((0x$(cut -c1-1 /proc/sys/kernel/random/uuid) % 2))
এটিও ০ বা ১ দেবে। বাইনারি লজিকের বাইরে কম ব্যবহারী।
পদ্ধতি ৪: র্যান্ডম নম্বর রিটার্ন করার ব্যাশ স্ক্রিপ্ট
হ্যান্ডি টুল বানাতে cd ~/.local/bin করুন। nano random বা vi random দিয়ে ফাইল তৈরি করুন। ০ বা ১ রিটার্ন করার স্ক্রিপ্ট:
#!/bin/bash
ranNum=$(($RANDOM % 2))
echo $ranNum
Ctrl+O (ন্যানোতে) দিয়ে সেভ, Ctrl+X দিয়ে বের হুন। chmod +x random দিয়ে এক্সিকিউটেবল করুন। এখন random টাইপ করলেই র্যান্ডম নম্বর मिलবে।
১-৫০ এর জন্য স্ক্রিপ্টে লিখুন: ranNum=$[RANDOM%50+1]। যেকোনো র্যান্ডম পদ্ধতি স্ক্রিপ্টে ব্যবহার করা যায়।