স্ক্রিপ্টে আর্গুমেন্ট পাস করা
শেল স্ক্রিপ্টে আর্গুমেন্ট পাস করা হল একটি গুরুত্বপূর্ণ ধারণা, যা ব্যবহারকারীদের স্ক্রিপ্টের সাথে ইনপুট হিসেবে তথ্য প্রদান করার সুযোগ দেয়। স্ক্রিপ্ট রান করার সময়, আপনি যেকোনো আর্গুমেন্ট (যেমন ফাইল নাম, সংখ্যা, বা যে কোনো ধরনের ডেটা) শেল স্ক্রিপ্টে পাস করতে পারেন এবং স্ক্রিপ্টের মধ্যে সেগুলি প্রক্রিয়া করা যায়।
আর্গুমেন্ট কী?
আর্গুমেন্ট হল সেই ডেটা যা আপনি শেল স্ক্রিপ্টকে রান করার সময় প্রদান করেন। এগুলি স্ক্রিপ্টে একটি বা একাধিক ইনপুট হিসেবে কাজ করে। আপনি যখন স্ক্রিপ্টটি চালান, তখন স্ক্রিপ্টের পরে যেসব মান (values) লিখবেন, সেগুলি আর্গুমেন্ট হিসেবে গণ্য হবে।
আর্গুমেন্ট পাস করার প্রক্রিয়া
ধরা যাক, আপনার একটি শেল স্ক্রিপ্ট আছে যা আর্গুমেন্ট নেয় এবং সেটি ব্যবহার করে কাজ করে। এটি করতে হলে আপনাকে স্ক্রিপ্টের সাথে আর্গুমেন্ট পাস করতে হবে।
স্ক্রিপ্টে আর্গুমেন্ট ব্যবহারের জন্য কিছু উদাহরণ
একটি আর্গুমেন্ট পাস করা:
উদাহরণ হিসেবে নিচে একটি স্ক্রিপ্ট দেখানো হল, যা ব্যবহারকারীর পাস করা আর্গুমেন্ট প্রিন্ট করে।স্ক্রিপ্ট:
greet.sh#!/bin/bash # স্ক্রিপ্টে পাস করা আর্গুমেন্ট গ্রহণ echo "Hello, $1!"এখানে,
$1হল প্রথম আর্গুমেন্ট। স্ক্রিপ্টটি রান করার সময়, আপনি আর্গুমেন্ট পাস করতে পারেন:./greet.sh Johnআউটপুট:
Hello, John!এখানে,
"John"হল আর্গুমেন্ট যা স্ক্রিপ্টে$1হিসেবে পাস করা হয়েছে।
একাধিক আর্গুমেন্ট পাস করা:
আপনি একাধিক আর্গুমেন্টও পাস করতে পারেন। উদাহরণস্বরূপ, যদি আপনি দুটি আর্গুমেন্ট পাস করতে চান:স্ক্রিপ্ট:
greet_multiple.sh#!/bin/bash # দুটি আর্গুমেন্ট গ্রহণ echo "Hello, $1!" echo "Your role is $2."এখানে
$1প্রথম আর্গুমেন্ট (যেমন নাম) এবং$2দ্বিতীয় আর্গুমেন্ট (যেমন কাজের নাম)।স্ক্রিপ্টটি চালান:
./greet_multiple.sh Alice Developerআউটপুট:
Hello, Alice! Your role is Developer.
সমস্ত আর্গুমেন্ট দেখানো:
কখনও কখনও আপনাকে সমস্ত আর্গুমেন্ট একত্রিত করে দেখতে হতে পারে। এর জন্য আপনি$@বা$*ব্যবহার করতে পারেন, যা সমস্ত আর্গুমেন্ট ধারণ করে।স্ক্রিপ্ট:
show_args.sh#!/bin/bash # সমস্ত আর্গুমেন্ট দেখানো echo "All arguments: $@"স্ক্রিপ্টটি চালান:
./show_args.sh Alice Developer 30আউটপুট:
All arguments: Alice Developer 30
আর্গুমেন্টের সংখ্যা জানা:
শেল স্ক্রিপ্টে আপনি কতটি আর্গুমেন্ট পাস করা হয়েছে, তা জানতে$#ব্যবহার করতে পারেন। এটি পাস করা আর্গুমেন্টের সংখ্যা প্রদান করে।স্ক্রিপ্ট:
count_args.sh#!/bin/bash echo "Number of arguments passed: $#"স্ক্রিপ্টটি চালান:
./count_args.sh Alice Developer 30আউটপুট:
Number of arguments passed: 3
ডিফল্ট মান ব্যবহার করা (কন্ডিশনাল চেক):
যদি কোনো আর্গুমেন্ট পাস না করা হয়, তাহলে আপনি একটি ডিফল্ট মান ব্যবহার করতে পারেন।স্ক্রিপ্ট:
default_args.sh#!/bin/bash # যদি আর্গুমেন্ট পাস না করা হয়, তবে ডিফল্ট মান ব্যবহার করা name=${1:-"Guest"} echo "Hello, $name!"এখানে, যদি প্রথম আর্গুমেন্ট না দেওয়া হয়, তবে
"Guest"ডিফল্ট মান হিসেবে ব্যবহৃত হবে।স্ক্রিপ্টটি চালান:
./default_args.shআউটপুট:
Hello, Guest!অথবা:
./default_args.sh Aliceআউটপুট:
Hello, Alice!
সারসংক্ষেপ
- শেল স্ক্রিপ্টে আর্গুমেন্ট পাস করার মাধ্যমে আপনি স্ক্রিপ্টকে আরো ডাইনামিক এবং ব্যবহারযোগ্য করতে পারেন।
$1,$2, ... আর্গুমেন্টগুলি ব্যবহৃত হয় স্ক্রিপ্টের মধ্যে, যেখানে$1প্রথম আর্গুমেন্ট,$2দ্বিতীয় আর্গুমেন্ট ইত্যাদি।$@বা$*ব্যবহার করে আপনি সমস্ত আর্গুমেন্ট একত্রিত করতে পারেন।$#আর্গুমেন্টের সংখ্যা জানতে ব্যবহৃত হয়।- আপনি
:-ব্যবহার করে ডিফল্ট মান সেট করতে পারেন যদি আর্গুমেন্ট না দেওয়া হয়।
এইভাবে শেল স্ক্রিপ্টে আর্গুমেন্ট পাস করা এবং এগুলির মাধ্যমে কার্যকরী স্ক্রিপ্ট তৈরি করা যায়।
Read more