AWK এ Multiple Delimiters এর ব্যবহার
AWK সাধারণত ফিল্ডগুলো আলাদা করতে স্পেস বা ট্যাব ব্যবহার করে, তবে প্রয়োজন অনুসারে একাধিক Delimiter ব্যবহার করা যায়। এটি ডেটা প্রসেসিংকে আরও সহজ এবং কার্যকর করে যখন আপনার ডেটা ফাইলটি একাধিক ধরনের Delimiter দ্বারা আলাদা থাকে। নিচে AWK এ Multiple Delimiters ব্যবহার করার বিভিন্ন পদ্ধতি এবং উদাহরণ দেওয়া হলো।
১. Multiple Delimiters সেট করা
AWK এ -F অপশন ব্যবহার করে Delimiter সেট করা যায়। একাধিক Delimiter ব্যবহার করার জন্য Regular Expression ব্যবহার করা হয়। Regular Expression এর মাধ্যমে বিভিন্ন Delimiter চিহ্নিত করা হয়।
উদাহরণ: কমা (,), সেমিকোলন (;), এবং স্পেস একসাথে Delimiter হিসেবে ব্যবহার
awk -F '[,; ]' '{print $1, $2, $3}' filename.txtএখানে, -F '[,; ]' ব্যবহার করে কমা, সেমিকোলন এবং স্পেস Delimiter হিসেবে ব্যবহার করা হয়েছে। ফাইলের প্রথম তিনটি ফিল্ড প্রিন্ট হবে।
২. Multiple Delimiters ব্যবহার করে ফিল্ড প্রক্রিয়াকরণ
আপনি যখন একাধিক Delimiter দিয়ে আলাদা করা ডেটা ফাইল প্রসেস করেন, তখন AWK প্রতিটি Delimiter দিয়ে ইনপুট লাইনটি বিভক্ত করে। নিচে একটি উদাহরণ দেওয়া হলো যেখানে ডেটা ফাইলটি কমা এবং পাইপ (|) দিয়ে আলাদা করা হয়েছে।
উদাহরণ: কমা এবং পাইপ Delimiter
awk -F '[,|]' '{print $1, $4}' filename.txtএখানে, কমা এবং পাইপ Delimiter হিসেবে ব্যবহার করা হয়েছে এবং প্রথম ও চতুর্থ ফিল্ড প্রিন্ট হবে।
৩. BEGIN ব্লক ব্যবহার করে Multiple Delimiters সেট করা
AWK এর BEGIN ব্লক ব্যবহার করে FS ভেরিয়েবল নির্ধারণ করেও Multiple Delimiters ব্যবহার করা যায়।
উদাহরণ: BEGIN ব্লক দিয়ে Multiple Delimiters
awk 'BEGIN {FS="[|: ]"} {print $2, $3}' filename.txtএখানে FS="[|: ]" ব্যবহার করে পাইপ, কোলন, এবং স্পেস Delimiter হিসেবে নির্ধারণ করা হয়েছে। দ্বিতীয় এবং তৃতীয় ফিল্ড প্রিন্ট হবে।
৪. Delimiters ব্যবহার করে Conditional প্রক্রিয়াকরণ
AWK এ Multiple Delimiters ব্যবহার করে নির্দিষ্ট শর্ত অনুযায়ী ডেটা ফিল্টার করতে পারেন।
উদাহরণ: নির্দিষ্ট শর্তের সাথে Multiple Delimiters
awk -F '[-,]' '$2 > 100 {print $1, $2}' filename.txtএখানে, - এবং , Delimiter হিসেবে ব্যবহার করা হয়েছে। দ্বিতীয় ফিল্ডের মান যদি 100 এর বেশি হয়, তবে প্রথম এবং দ্বিতীয় ফিল্ড প্রিন্ট হবে।
৫. Delimiters ব্যবহার করে Replacement
AWK এর gsub() ফাংশন ব্যবহার করে নির্দিষ্ট Delimiter পরিবর্তন করা সম্ভব।
উদাহরণ: Delimiter পরিবর্তন করা
awk '{gsub(/[;,]/, "|"); print $0}' filename.txtএখানে, কমা এবং সেমিকোলন Delimiterগুলিকে পাইপ দ্বারা প্রতিস্থাপন করা হয়েছে এবং প্রতিটি লাইন প্রিন্ট করা হয়েছে।
সারসংক্ষেপ
AWK এ Multiple Delimiters ব্যবহার করে ডেটা প্রক্রিয়াকরণ করা অত্যন্ত সহজ এবং কার্যকর। একাধিক Delimiter ব্যবহার করতে Regular Expression ব্যবহার করা হয়, যা বিভিন্ন ধরনের Delimiter সহজে সনাক্ত এবং ব্যবহার করতে সক্ষম করে। এটি বিশেষত সেই ক্ষেত্রে কার্যকর যখন ডেটা ফাইলটি একাধিক Delimiter দিয়ে বিভক্ত থাকে এবং ডেটা বিশ্লেষণ সহজে সম্পাদন করতে হয়।
Read more