ব্যান্ড ভেরিয়েবলগুলি এলোমেলো সংখ্যায় কীভাবে সেট করবেন



সমস্যাগুলি দূর করার জন্য আমাদের উপকরণটি ব্যবহার করে দেখুন

আপনি সহজেই ব্যাশ প্রম্পটে একটি এলোমেলো সংখ্যা তৈরি করতে পারেন, যা আপনি পরে পরিবর্তনশীল হিসাবে সংখ্যার সেট করতে ব্যবহার করতে পারেন। এটি নির্দিষ্ট ধরণের স্ক্রিপ্টগুলি লেখা থেকে শুরু করে ট্যাবলেটপ রোলপ্লেয়িং অ্যাডভেঞ্চারের সমস্ত কিছুর জন্য কার্যকর। আপনি ডি অ্যান্ড ডি প্রচার চালাচ্ছেন বা শক্তিশালী বাশ ভাষায় কোনও ইউটিলিটি লেখার চেষ্টা করছেন না কেন আপনি সাধারণত কোডের একক লাইন নিয়ে দূরে চলে যেতে পারেন। নির্দিষ্ট সুরক্ষা চেকগুলির প্রিমিয়াম করার চেষ্টা করার সময় এটি একটি খুব দরকারী সরঞ্জাম, তবে আপনি মনে রাখতে চাইবেন যে ভাল ক্র্যাকারগুলি এই সাধারণ সংখ্যার জেনারেটরকে আটকায়। তারা এখনও নির্দিষ্ট ধরণের পাসওয়ার্ড এবং কোড উত্পন্ন করার জন্য দরকারী, যা কোনওভাবেই সুরক্ষিত রাখতে সহায়তা করতে পারে might



এটি সম্পাদন করার জন্য কয়েকটি ভিন্ন উপায় রয়েছে এবং প্রতিটি কৌশল প্রতিটি পরিস্থিতিতে সঠিক নয়, তাই আমরা প্রতিটি উপায়ে ঘুরে দেখার জন্য যথাসাধ্য চেষ্টা করেছি এবং এটি কার্যকর হয়েছে তা নিশ্চিত করার জন্য এটি পরীক্ষা করে দেখেছি। এর জন্য আপনাকে একটি টার্মিনাল থেকে কাজ করা দরকার, সুতরাং গ্রাফিকাল টার্মিনালটি খুলতে Ctrl + Alt + T বা সুপার (উইন্ডোজ) + টি ব্যবহার করুন, ড্যাশটিতে টার্মিনাল টাইপ করে একটি শুরু করুন, অ্যাপ্লিকেশন বা হুইস্কার থেকে এটি নির্বাচন করুন এবং সিস্টেম সরঞ্জাম মেনু বা Ctrl, Alt এবং F1 এবং F6 এর মধ্যে একটি কী ব্যবহার করে আন্তরিকভাবে ভার্চুয়াল টার্মিনালে যান।



পদ্ধতি 1: একটি পূর্ণ র্যান্ডম বাইট বাছাই

আপনি বাশ প্রম্পট থেকে সরাসরি নিম্নলিখিত কমান্ডটি চালিয়ে 1 এবং 256 এর মধ্যে থেকে একটি এলোমেলো সংখ্যা তৈরি করতে পারেন:



-আন-এন 1 -টু 1 / দেব / ইউরানডম এর

আপনি যখন কখনও কখনও এই আদেশটি / dev / urandom এর পরিবর্তে / dev / এলোমেলোভাবে উল্লেখ করেছেন দেখতে পাচ্ছেন, আপনি সম্ভবত এইভাবে চালাতে চাইবেন না। এটি অন্য প্রোগ্রামগুলিকে আপনার ব্যবহারের সময় এলোমেলো বীজ জেনারেটর ব্যবহার করতে সক্ষম হতে অনিচ্ছাকৃতভাবে ছিনতাই করতে পারে। আপনি একবার প্রোগ্রামটি চালিয়ে নেওয়ার পরে এবং একটি সংখ্যা অর্জন করার পরে আপনি নিশ্চিত হতে পারেন যে এটি এইভাবে কাজ করবে:



রাননুম = $ (($ (অড-এন -1 1 -টু 1 / দেব / ইউরানডম)))

এটি ভেরিয়েবল রাননাম 1 এবং 256 এর মধ্যে একটি সংখ্যায় সেট করবে যা আপনি চালনার সময় নির্বাচিত করবেন। আপনি এটিকে কমান্ড লাইন থেকে বা কোনও স্ক্রিপ্টের অভ্যন্তর থেকে চালাতে পারেন এবং এটি কোনওভাবেই কাজ করা উচিত। মনে রাখবেন যে আপনি কোনও বৈধ পরিবর্তনশীল নামের সাথে রাননাম প্রতিস্থাপন করতে পারেন।

পদ্ধতি 2: 1 এবং যা কিছু এর মধ্যে একটি এলোমেলো সংখ্যায় একটি চলক সেট করা

আপনি স্ট্যান্ডার্ড আউটপুটে সরাসরি 1 এবং 40 এর মধ্যে একটি এলোমেলো সংখ্যা পাঠাতে কমান্ড লাইন থেকে প্রতিধ্বনি $ [RANDOM% 40 + 1] চালিয়ে যেতে পারেন, তবে আপনি কার্যত কোনও সংখ্যার সাথে কমান্ডের 40 টি প্রতিস্থাপন করতে পারেন। অবশেষে আপনার হোস্ট মেশিনের আর্কিটেকচারটি অঙ্কগুলি বা সম্ভবত বাশ ইচ্ছার শেষ হয়ে যাবে, তবে সন্দেহজনক যে যাইহোক আপনার এ জাতীয় উচ্চ সংখ্যা প্রয়োজন।

ধরে নেওয়া যাক আপনি আপনার পরিবর্তনশীল কনফিগারেশনের জন্য 1 এবং 10 এর মধ্যে একটি এলোমেলো সংখ্যা তৈরি করতে চাই d আপনি চালাতে পারেন:

রাননাম = $ [র‌্যান্ডোম% 10 + 1]

মনে রাখবেন যে আপনি যেটি উচ্চ মানের চান তা 10 দিয়ে প্রতিস্থাপন করতে পারেন। এই মানটি অন্তর্ভুক্ত, যার অর্থ 10 একটি বৈধ প্রত্যাবর্তিত চিত্র। আপনি যদি এটি একে একে হ্রাস করতে চান, তবে কেবল সি বা সি ++ স্টাইল -1 গণিত ব্যবহারের পরিবর্তে মান 9 করুন। এই পদ্ধতিটি ব্যবহার করে কোনও ভেরিয়েবল সেট করার সময় এগুলি অপ্রয়োজনীয় এবং এগুলি আসলে সংখ্যার যোগ বা বিয়োগ করে অপ্রত্যাশিত ফলাফল তৈরি করবে।

পদ্ধতি 3: একটি একক র্যান্ডম বিট নির্বাচন করা

আপনার যদি শূন্য বা একের একটি এলোমেলো বিটটিতে কোনও ভেরিয়েবল সেট করতে হয় তবে আপনি আগের কোডটি নিম্নলিখিতভাবে সংশোধন করতে চাইতে পারেন:

রাননুম = $ (($ (অড-এন -1 1 -আই / দেব / ইউরানডম)% 2))

এই কোডটি রান্নামকে 1 বা 0 তে নির্ধারণ করবে যেটি সংখ্যা থেকে এটি নমুনা দেয় কিনা তার উপর নির্ভর করে / দেব / ইউরানডম ফাইলটি সমান বা বিজোড় ছিল। আপনার যদি এক বা অন্য রাজ্যে কোনও সাধারণ হাঁ বা কোনও সমীকরণ নির্ধারণ করার প্রয়োজন হয় তবে এটি কার্যকর হতে পারে।

আপনি যদি কাজ করছেন তার জন্য যদি এটি পর্যাপ্ত র্যান্ডম না হয় তবে আপনি / proc / sys / কার্নেল / এলোমেলো ডিরেক্টরিতে কল করে কিছুটা এলোমেলো নম্বর পেতে পারেন:

রাননাম = $ ((0x $ (কাট -c1-1 / প্রো / সিএস / কার্নেল / এলোমেলো / ইউউইড)% 2))

আবার, যদিও, এটি কেবল পরিবর্তনশীল 1 বা 0 তে সেট করবে যা বাইনারি যুক্তির জন্য উপযুক্ত তবে সময়ের জন্য ততটা কার্যকর নয় যখন আপনার দীর্ঘ সংখ্যার প্রয়োজন হতে পারে। আপনি যদি অবশ্য এর দরকার পড়ে তবে আপনি এই লাইনগুলির কোনও কোনও ব্যাশ স্ক্রিপ্টে ব্যবহার করতে পারেন। এই দ্বিতীয় বিকল্পটি এমন পরিস্থিতিতেগুলির জন্য সম্ভবত আরও ভাল হতে পারে যেখানে প্রথমটি ব্যর্থ হয়

পদ্ধতি 4: এলোমেলো নম্বর ফিরিয়ে দেওয়ার জন্য বাশ স্ক্রিপ্টগুলি অনুমোদন করা

যদি আপনি যে কোনও সময়ে একটি এলোমেলো সংখ্যা তৈরির জন্য কোনও হ্যান্ডেল সরঞ্জাম রাখতে চান তবে আপনি এটির জন্য একটি কমান্ড লাইন স্ক্রিপ্ট তৈরি করতে পারেন। এটি বেশিরভাগ আধুনিক লিনাক্সের প্রম্পটগুলিতে স্ট্যান্ডার্ড বাশ ভাষার চেয়ে বেশি কিছুই ব্যবহার করে না, তাই কোনও আধুনিক লিনাক্স বিতরণ এবং বিএসডি-ভিত্তিক অপারেটিং সিস্টেমের বেশ কয়েকটি এটি সঠিকভাবে পরিচালনা করতে পারে। আপনি যে কোনও জায়গা থেকে এটি চালাতে পারবেন এমন স্থানে আপনার স্ক্রিপ্ট রয়েছে তা নিশ্চিত করার জন্য আপনি আরও কিছু আগে যাওয়ার আগে সিডি। / .লোকল / বিন ব্যবহার করতে ইচ্ছুক হতে পারেন।

শুরু করতে ন্যানো এলোমেলো বা vi র্যান্ডম টাইপ করুন, যদিও আপনি চাইলে আপনার স্ক্রিপ্টের জন্য আলাদা নাম ব্যবহার করতে পারেন। আপনি যদি পছন্দ করেন তবে আপনি অন্য পাঠ্য সম্পাদকও ব্যবহার করতে পারেন। বলুন আপনি কমান্ড লাইনে টাইপ করার সময় এমন একটি তৈরি করতে চেয়েছিলেন যা 1 বা 0 ফেরত আসবে। নিম্নলিখিতটি প্রবেশ করুন এবং তারপরে আপনি ন্যানো ব্যবহার করছেন তবে এটি সংরক্ষণ করতে Ctrl + O টিপুন:

#! / বিন / বাশ রাননুম = $ ((ND র্যান্ডোম% 2)) প্রতিধ্বনি $ রাননুম

পাঠ্য সম্পাদক থেকে প্রস্থান করতে Ctrl + X টাইপ করুন এবং কমান্ড লাইনে একবার আপনার স্ক্রিপ্ট ব্যবহারযোগ্য করে তোলার জন্য chmod + x এলোমেলো ব্যবহার করুন। আপনি অবশ্যই রাননুম = $ [RANDOM% 10 + 1], রাননাম = $ (($ (ওড -অ্যান -এন 1 -টু 1 / দেব / ইউরানডম))) বা রাননুম = $ (($ র‌্যান্ডোম% 2)) যাতে আপনি ঠিক কী ধরণের সংখ্যা ফিরে চান তা নিয়ন্ত্রণ করতে পারেন could ধরা যাক আপনি নিয়মিত 1 এবং 50 এর মধ্যে একটি সংখ্যা নির্বাচন করতে চেয়েছিলেন। বাশ স্ক্রিপ্টের পাঠ্য এতে পরিবর্তন করুন:

#! / বিন / বাশ রানমুম = $ [র‌্যান্ডোম% 50 + 1] প্রতিধ্বনি $ রাননুম

আপনি যখনই এলোমেলো সংখ্যা উত্পন্ন করতে চান তখন আপনি এটিকে সহজেই কমান্ড লাইন থেকে এলোমেলোভাবে টাইপ করে চালাতে পারেন।

4 মিনিট পঠিত