Sed (Stream Editor) ব্যবহার করার সময় আপনি line numbers ব্যবহার করে নির্দিষ্ট লাইন বা লাইন রেঞ্জ ঠিক করতে পারেন, যা addressing হিসেবে পরিচিত। Sed এর মাধ্যমে আপনি নির্দিষ্ট লাইন, লাইন রেঞ্জ বা প্যাটার্ন অনুযায়ী টেক্সট পরিবর্তন, মুছে ফেলা, বা নতুন কিছু যোগ করতে পারেন। এখানে, আমরা line numbers ব্যবহার করে Sed addressing সম্পর্কে বিস্তারিত আলোচনা করব।
Sed Addressing এর মাধ্যমে Line Number ব্যবহার করা
Sed এ addressing হলো যে কোনো নির্দিষ্ট লাইনে বা লাইনের রেঞ্জে কমান্ড প্রয়োগ করা। আপনি নির্দিষ্ট লাইন নম্বর বা প্যাটার্ন মেলানোর মাধ্যমে Sed কমান্ড প্রয়োগ করতে পারেন।
1. একক লাইন নম্বর দিয়ে addressing
একটি নির্দিষ্ট লাইন নম্বর ব্যবহার করে Sed কমান্ড প্রয়োগ করা যেতে পারে। উদাহরণস্বরূপ, যদি আপনি ফাইলের তৃতীয় লাইনটি পরিবর্তন করতে চান, তাহলে আপনি তৃতীয় লাইনকে ঠিক করে কমান্ড ব্যবহার করবেন।
সিনট্যাক্স:
sed 'line_number command' input-fileউদাহরণ:
sed '3s/cat/dog/' file.txtএটি file.txt ফাইলে তৃতীয় লাইনটি খুঁজে "cat" শব্দটি "dog"-এ প্রতিস্থাপন করবে।
2. লাইন রেঞ্জ দিয়ে addressing
Sed দিয়ে আপনি একটি নির্দিষ্ট লাইন রেঞ্জও নির্দিষ্ট করতে পারেন। যদি আপনি একটি রেঞ্জের মধ্যে কিছু পরিবর্তন করতে চান, তাহলে আপনাকে প্রথম এবং শেষ লাইনের মধ্যে কমা দিয়ে সেগুলি উল্লেখ করতে হবে।
সিনট্যাক্স:
sed 'start_line,end_line command' input-fileউদাহরণ:
sed '2,4s/cat/dog/' file.txtএটি file.txt ফাইলের দ্বিতীয় থেকে চতুর্থ লাইন পর্যন্ত "cat" শব্দগুলোকে "dog"-এ প্রতিস্থাপন করবে।
3. লাইন নম্বর দিয়ে লাইন মুছে ফেলা
Sed ব্যবহার করে আপনি নির্দিষ্ট লাইন মুছে ফেলতেও পারেন। যদি আপনি একটি নির্দিষ্ট লাইন বা একটি রেঞ্জ মুছে ফেলতে চান, তাহলে d কমান্ড ব্যবহার করতে হবে।
সিনট্যাক্স:
sed 'line_numberd' input-fileউদাহরণ:
sed '3d' file.txtএটি file.txt থেকে তৃতীয় লাইনটি মুছে ফেলবে।
রেঞ্জ দিয়ে লাইন মুছে ফেলা:
sed '2,4d' file.txtএটি file.txt থেকে দ্বিতীয় থেকে চতুর্থ লাইন পর্যন্ত মুছে ফেলবে।
4. প্যাটার্ন দিয়ে লাইন addressing
Sed দিয়ে আপনি একটি নির্দিষ্ট প্যাটার্ন খুঁজে সেটির ওপর কমান্ড প্রয়োগ করতে পারেন। আপনি যদি প্যাটার্ন ম্যাচিং এর ভিত্তিতে কমান্ড প্রয়োগ করতে চান, তাহলে আপনি /pattern/ ব্যবহার করতে পারেন।
সিনট্যাক্স:
sed '/pattern command' input-fileউদাহরণ:
sed '/cat/s/cat/dog/' file.txtএটি file.txt ফাইলের যেসব লাইনে "cat" শব্দটি থাকবে, সেখানে "cat" শব্দটিকে "dog"-এ পরিবর্তন করবে।
5. প্রথম এবং শেষ লাইন addressing
Sed দিয়ে আপনি প্রথম লাইন বা শেষ লাইন নির্বাচন করতে পারেন। প্রথম লাইন নির্বাচন করার জন্য 1 ব্যবহার করা হয়, এবং শেষ লাইন নির্বাচনের জন্য $ ব্যবহার করা হয়।
উদাহরণ:
প্রথম লাইন পরিবর্তন:
sed '1s/cat/dog/' file.txtএটি
file.txtএর প্রথম লাইনে "cat" শব্দটিকে "dog"-এ পরিবর্তন করবে।শেষ লাইন পরিবর্তন:
sed '$s/cat/dog/' file.txtএটি
file.txtএর শেষ লাইনে "cat" শব্দটিকে "dog"-এ পরিবর্তন করবে।প্রথম থেকে শেষ লাইন পর্যন্ত পরিবর্তন:
sed '1,$s/cat/dog/g' file.txtএটি
file.txtএর প্রথম থেকে শেষ লাইন পর্যন্ত সমস্ত "cat" শব্দগুলোকে "dog"-এ প্রতিস্থাপন করবে।
6. নথি বা ফাইলের ভিতরে লাইন সংখ্যা পেতে
Sed ব্যবহার করে আপনি একটি ফাইলের ভিতরে লাইন নম্বর গুনতে বা দেখতে পারেন। তবে এটি একটু ভিন্নভাবে কাজ করে, সেক্ষেত্রে = কমান্ড ব্যবহার করতে হবে।
সিনট্যাক্স:
sed = input-fileউদাহরণ:
sed = file.txtএটি file.txt ফাইলের প্রতিটি লাইনের নম্বর দেখাবে, যার সাথে সেই লাইনের কনটেন্টও থাকবে।
সারাংশ
Sed এর মাধ্যমে আপনি line numbers ব্যবহার করে নির্দিষ্ট লাইন বা লাইন রেঞ্জে কমান্ড প্রয়োগ করতে পারেন। আপনি একক লাইন নম্বর দিয়ে, লাইন রেঞ্জ দিয়ে, অথবা প্যাটার্ন ম্যাচিং এর মাধ্যমে Sed addressing ব্যবহার করতে পারেন। Sed এর এই ক্ষমতা ফাইল প্রক্রিয়াকরণ, টেক্সট পরিবর্তন এবং স্ক্রিপ্টিংয়ের কাজকে আরও সহজ এবং দ্রুত করে তোলে।
Read more