একটি প্যারামিটার হলো একটি এন্টিটি যা মান সংরক্ষণ করে। এটি একটি নাম, একটি নম্বর বা কিছু স্পেশাল ক্যারেক্টার হতে পারে। একটি ভেরিয়েবল হলো একটি প্যারামিটার যা একটি নাম দ্বারা ডিনোটেড হয়। কিছু ভেরিয়েবল ইতিমধ্যে আপনার জন্য সেট করা থাকে, এবং অধিকাংশের মানে অ্যাসাইন করা যাবে না।
এই ভেরিয়েবলগুলো উপযোগী ইনফরমেশন ধারণ করে, যা একটি শেল স্ক্রিপ্ট ব্যবহার করতে পারে তার রানিং এনভায়রনমেন্ট সম্পর্কে জানতে।
ব্যাশ দুধরকম প্যারামিটার প্রদান করে।
- পজিশনাল প্যারামিটার
- স্পেশাল প্যারামিটার
এই আর্টিকেলে, আমরা উদাহরণসহ ব্যাশ পজিশনাল প্যারামিটার নিয়ে আলোচনা করব।
এই আর্টিকেল আমাদের চলমান ব্যাশ টিউটোরিয়াল সিরিজের অংশ।
উদাহরণ ১: ব্যাশ পজিশনাল প্যারামিটার – $0, $1, $2 ..
পজিশনাল প্যারামিটারها হলো আপনার স্ক্রিপ্ট ইনভোক করার সময় দেওয়া আর্গুমেন্টগুলো। এটি $1 থেকে $N পর্যন্ত হতে পারে। যখন N একক ডিজিটের চেয়ে বড় হয়, তখন এটিকে ব্রেসেস দিয়ে घিরায় আবশ্যক, যেমন ${N}।
ভেরিয়েবল $0 হলো প্রোগ্রামের বেসনেম যেভাবে ডাকা হয়েছিল।
নিচের উদাহরণটি দুটি আর্গুমেন্ট নেয় এবং সেই দুটি ইন্টিজারের মধ্যে অ্যারিথমেটিক অপারেশনের রেজাল্ট দেয়।
প্রথমে, arithmetic.sh শেল স্ক্রিপ্টটি নিচের মত তৈরি করুন।
$ cat arithmetic.sh #!/bin/bash echo -e "\$1=$1" echo -e "\$2=$2" let add=$1+$2 let sub=$1-$2 let mul=$1*$2 let div=$1/$2 echo -e "Addition=$add\nSubtraction=$sub\nMultiplication=$mul\nDivision=$div\n"
পরবর্তী, arithmetic.sh-কে উপযুক্ত প্যারামিটার দিয়ে এক্সিকিউট করুন নিচের মত।
$ ./arithmetic.sh 12 10 $1=12 $2=10 Addition=22 Subtraction=2 Multiplication=120 Division=1
উপরোক্ত আউটপুটে $1-এ ১২ মান আছে, এবং $2-এ ১০।
শেল বিল্ট-ইন ‘let’ শেল ভেরিয়েবলের ওপর অ্যারিথমেটিক অপারেশন করার অনুমতি দেয়। উপরের স্ক্রিপ্টটি দেওয়া প্যারামিটারগুলোতে অ্যারিথমেটিক অপারেশন যেমন যোগ, বিয়োগ, গুণ এবং ভাগ করে।
উদাহরণ ২: ব্যাশ পজিশনাল প্যারামিটার সেট / আনসেট করা
বিল্ট-ইন সেট কমান্ড পজিশনাল প্যারামিটার সেট এবং আনসেট করতে ব্যবহৃত হয়।
প্রথমে, positional.sh শেল স্ক্রিপ্টটি নিচের মত তৈরি করুন।
$ cat positional.sh #!/bin/bash # কমান্ড লাইন থেকে echo -e "Basename=$0" echo -e "\$1=$1" echo -e "\$2=$2" echo -e "\$3=$3" # সেট বিল্ট-ইন থেকে set First Second Third echo -e "\$1=$1" echo -e "\$2=$2" echo -e "\$3=$3" # পজিশনাল প্যারামিটার -(হাইফেন) দিয়ে স্টোর করা set - -f -s -t echo -e "\$1=$1" echo -e "\$2=$2" echo -e "\$3=$3" # পজিশনাল প্যারামিটার আনসেট করা set -- echo -e "\$1=$1" echo -e "\$2=$2" echo -e "\$3=$3"
উপরোক্ত স্ক্রিপ্টটি প্রথমে কমান্ড লাইন আর্গুমেন্টগুলো প্রিন্ট করে, তারপর সেট কমান্ড এক্সপ্লিসিটলি পজিশনাল প্যারামিটার সেট করে। -- দিয়ে সেট করা মানে অপশন들의 শেষ, সব ফলোইং আর্গুমেন্ট পজিশনাল প্যারামিটার এমনকি যদি সেগুলো '-' দিয়ে শুরু হয়। '--' দিয়ে সেট করা অন্য কোনো আর্গুমেন্ট ছাড়া সকল পজিশনাল প্যারামিটার আনসেট করে।
পরবর্তী, positional.sh এক্সিকিউট করুন নিচের মত।
$ ./positional.sh Basename=t.sh $1=12 $2=10 $3= $1=First $2=Second $3=Third $1=-f $2=-s $3=-t $1= $2= $3=
পরবর্তী আর্টিকেলে, আমরা উদাহরণসহ ব্যাশ স্পেশাল প্যারামিটার নিয়ে আলোচনা করব।