AWK একটি শক্তিশালী টেক্সট প্রসেসিং ভাষা, তবে এটি সরাসরি switch বা case স্টেটমেন্টের সমর্থন করে না, যা কিছু অন্যান্য প্রোগ্রামিং ভাষায় দেখা যায়। তবে, AWK এ একটি কার্যকর উপায়ে if-else স্টেটমেন্ট ব্যবহার করে স্যুইচ কেসের মতো আচরণ তৈরি করা সম্ভব। নিচে AWK এ কিভাবে switch case স্টাইলের লজিক তৈরি করা যায় এবং তার ব্যবহার উল্লেখ করা হলো।
Switch Case এর ধারণা
Switch স্টেটমেন্ট সাধারণত একটি পরিবর্তনশীলের মান পরীক্ষা করে এবং সেই অনুযায়ী বিভিন্ন অ্যাকশন সম্পাদন করে। এটি সাধারণত এইভাবে কাজ করে:
switch (variable) {
case value1:
// code to be executed if variable equals value1
break;
case value2:
// code to be executed if variable equals value2
break;
default:
// code to be executed if variable doesn't match any case
}AWK এ Switch Case এর বিকল্প: If-Else
AWK এ switch স্টেটমেন্টের বিকল্প হিসাবে if-else স্টেটমেন্ট ব্যবহার করা যেতে পারে। উদাহরণস্বরূপ:
awk '{
if ($1 == "A") {
print "Case A"
} else if ($1 == "B") {
print "Case B"
} else if ($1 == "C") {
print "Case C"
} else {
print "Default case"
}
}' filename.txtএখানে, প্রথম কলামের মান অনুযায়ী বিভিন্ন কেস প্রিন্ট হবে।
Switch Case Simulation in AWK
AWK এ switch কেসের মতো আচরণ তৈরি করতে, আমরা if-else স্টেটমেন্টগুলি ব্যবহার করব। নিচে একটি উদাহরণ দেওয়া হলো:
উদাহরণ ১: স্যুইচ কেসের মতো আচরণ
awk '{
switch_value = $1 # প্রথম কলামের মান গ্রহণ
if (switch_value == "A") {
print "You chose A"
} else if (switch_value == "B") {
print "You chose B"
} else if (switch_value == "C") {
print "You chose C"
} else {
print "Invalid choice"
}
}' filename.txtএখানে, $1 (প্রথম কলাম) অনুযায়ী আমরা বিভিন্ন ফলাফল প্রিন্ট করছি।
উদাহরণ ২: ফাংশন ব্যবহার করে স্যুইচ কেস
AWK এ একটি ফাংশন ব্যবহার করে স্যুইচ কেসের মতো আচরণ করা যেতে পারে:
awk 'function switch_case(switch_value) {
if (switch_value == "A") {
return "You chose A"
} else if (switch_value == "B") {
return "You chose B"
} else if (switch_value == "C") {
return "You chose C"
} else {
return "Invalid choice"
}
}
{
print switch_case($1) # প্রথম কলামের মান অনুযায়ী ফলাফল প্রিন্ট
}' filename.txtএখানে, একটি ফাংশন switch_case তৈরি করা হয়েছে যা প্রথম কলামের মান অনুযায়ী ফলাফল প্রদান করে।
সারসংক্ষেপ
AWK সরাসরি switch case স্টেটমেন্ট সমর্থন না করলেও if-else স্টেটমেন্ট ব্যবহার করে স্যুইচ কেসের মতো আচরণ তৈরি করা সম্ভব। AWK এর এই ক্ষমতা ডেটা বিশ্লেষণের কাজকে আরও সহজ এবং কার্যকর করে, বিশেষ করে যখন বিভিন্ন শর্ত অনুযায়ী ডেটার ওপর বিভিন্ন অ্যাকশন প্রয়োগ করতে হয়। AWK এর মাধ্যমে ডেটা প্রসেসিং এবং বিশ্লেষণে কাস্টম লজিক যোগ করতে, এই ধরনের পদ্ধতি খুবই উপকারী।
Read more