বাশে অর্ধমৃত্যু

একটি বাশ স্ক্রিপ্ট গণনা যোগ করুন কিভাবে

যদিও Bash একটি স্ক্রিপ্টিং ভাষা, এটি একটি সাধারণ উদ্দেশ্য প্রোগ্রামিং ভাষা সব ক্ষমতা আছে বেশ। এর মধ্যে গাণিতিক ফাংশন অন্তর্ভুক্ত। একটি সিনট্যাক্স অপশন আছে যা আপনি একটি অভিব্যক্তি এর গাণিতিক মূল্যায়ন উদ্বিগ্ন ব্যবহার করতে পারেন। সম্ভবত সবচেয়ে পাঠযোগ্য একটি কমান্ড কমান্ড। উদাহরণ স্বরূপ

"m = 4 * 1024" যাক

4 বার 1024 গণনা করা হবে এবং ফলাফলটি "m" রূপে পরিনত করবে।

আপনি একটি ইকো বিবৃতি যোগ করে ফলাফল মুদ্রণ করতে পারেন:

"m = 4 * 1024" ইকো $ মি

আপনি নিম্নোক্ত কোডটি লিখতে কমান্ড লাইন থেকে এটি পরীক্ষা করতে পারেন:

"m = 4 * 1024" দিন | echo $ m

আপনি বাশ কমান্ড ধারণকারী একটি ফাইলও তৈরি করতে পারেন, সেই ক্ষেত্রে ফাইলের উপরে একটি লাইন যোগ করুন যা কোডটি কার্যকর করার জন্য অনুমিত হওয়া প্রোগ্রামটি নির্দিষ্ট করে। উদাহরণ স্বরূপ:

#! / bin / bash যাক "m = 4 * 1024" echo $ m

বাশ এক্সিকিউটেবলের অভিব্যক্তি / bin / bash এ অবস্থিত। আপনার স্ক্রিপ্ট ফাইলের অনুমতিগুলি সেট করা প্রয়োজন যাতে এটি এক্সিকিউটেবল হয়। স্ক্রিপ্ট ফাইলের নাম assuming script1.sh , আপনি কমান্ডের সাহায্যে এক্সিকিউটেবল ফাইল তৈরি করার অনুমতি সেট করতে পারেন:

chmod 777 script1.sh

তারপরে আপনি কমান্ড দিয়ে এটি চালনা করতে পারেন:

./script1.sh

উপলব্ধ আদিম অপারেশনগুলি জাভা এবং সি মত মান প্রোগ্রামিং ভাষাগুলির মত একই। গুণফল ছাড়াও, উপরে উল্লিখিত, আপনি অতিরিক্ত ব্যবহার করেন:

"এম = একটি + 7" যাক

বা বিয়োগ:

"এম = একটি - 7" যাক

বা বিভাগ:

"এম = একটি / 2" যাক

বা মডুলো (বাকি একটি পূর্ণসংখ্যা বিভাগ):

"মি = একটি% 100" দিন

যখন একটি অপারেশন একই ভেরিয়েবলে প্রয়োগ করা হয় যার ফলে ফলাফলটি আপনি নির্ধারিত মান গাণিতিক শর্টদন্ড অ্যাসাইনমেন্ট অপারেটর ব্যবহার করতে পারেন, এছাড়াও কম্পাউন্ড অ্যাসাইনমেন্ট অপারেটর হিসাবেও উল্লেখ করা হয়। উদাহরণস্বরূপ, উপরন্তু, আমাদের আছে:

"M + = 15" দিন

যা "m = m + 15" এর সমতুল্য। বিয়োগ জন্য আমরা আছে:

"m - = 3" দিন

যা "m = m - 3" এর সমতুল্য। বিভাগ জন্য আমরা আছে:

"m / = 5" দিন

যা "m = m / 5" এর সমতুল্য। এবং modulo জন্য, আমরা আছে:

"মি% = 10" দিন

যা "m = m% 10" এর সমতুল্য।

উপরন্তু, আপনি বৃদ্ধি এবং হ্রাস অপারেটর ব্যবহার করতে পারেন:

"M ++" দিন

সমান "m = m + 1" এবং

মি দিন--"

"m = m - 1" এর সমতুল্য

এবং তারপর তির্যক "প্রশ্ন চিহ্ন-কোলন" অপারেটর আছে, যা নির্দিষ্ট শর্ত সত্য বা মিথ্যা কিনা তার উপর ভিত্তি করে দুটি মান ফেরত দেয়। উদাহরণ স্বরূপ

"k = (m <9)" 0: 1 "

এই নিয়োগের বিবৃতিটির ডানদিকের অংশটি "0" এর মূল্যায়ন করে যদি ভেরিয়েবল "m" 9 এর কম হয়। অন্যথায়, এটি 1 এর মূল্য নির্ধারণ করে। এটি "m" কম হলে ভেরিয়েবল "k" নির্ধারিত হয় "0" 9 এবং "1" এর থেকে অন্যথায়

প্রশ্ন চিহ্ন-কলোন অপারেটর সাধারণ ফর্ম হল:

শর্ত? মান-যদি-সত্য: value-if-false

ব্যাশ মধ্যে ফ্লোটিং পয়েন্ট অ্যার্থম্যাটিক

চলুন অপারেটর শুধুমাত্র পূর্ণসংখ্যা গণিত জন্য কাজ করে। ফ্লোটিং পয়েন্ট আর্গুমেন্টের জন্য আপনি উদাহরণস্বরূপ GNU BC ক্যালকুলেটর হিসাবে ব্যবহার করতে পারেন যেমন এই উদাহরণে সচিত্র করা হয়েছে:

ইকো "32.0 + 1.4" | খ্রিস্টপূর্ব

"পাইপ" অপারেটর "|" বীজ ক্যালকুলেটর থেকে "32.0 + 1.4" এর গাণিতিক অভিব্যক্তিটি পাস করে, যা প্রকৃত সংখ্যাটি ফেরত দেয়। Echo কমান্ডটি ফলাফলকে আদর্শ আউটপুটে প্রিন্ট করে।

অরিথ্যাটিক জন্য বিকল্প সিনট্যাক্স

ব্যাক্টিক্স (ব্যাক একক উদ্ধৃতি চিহ্ন) এই উদাহরণের মত একটি গাণিতিক অভিব্যক্তি মূল্যায়ন করতে ব্যবহার করা যেতে পারে:

echo 'expr $ m + 18'

এটি 18 "m" ভেরিয়েবলের মান যুক্ত করবে এবং তারপর ফলাফলটি মুদ্রণ করবে।

একটি ভেরিয়েবলের জন্য গণনা মান বরাদ্দ করতে আপনি প্রায় চারপাশে স্পেস ছাড়া সমান চিহ্ন ব্যবহার করতে পারেন:

মি = 'এক্সপ্রেশন $ m + 18'

গাণিতিক এক্সপ্রেশন মূল্যায়ন অন্য উপায় ডবল কণ্ঠস্বর ব্যবহার করা হয়। উদাহরণ স্বরূপ:

((* এম = 4))

এটি ভেরিয়েবল "m" এর মান চতুর্ভুজ হবে

গাণিতিক মূল্যায়নের পাশাপাশি, বাশ শেল অন্যান্য প্রোগ্রামার নির্মাণ করে যেমন- লুপস , ত্রি-লুপ , শর্তাবলী , এবং ফাংশন এবং সাবরুটিন