Sed এর মৌলিক ধারণা এবং Syntax

Sed এর ভূমিকা (Introduction to Sed) - সেড (Sed) - Computer Programming

471

Sed (Stream Editor) হল একটি কমান্ড-লাইন টুল যা টেক্সট ফাইলের মধ্যে পরিবর্তন করতে ব্যবহৃত হয়। এটি মূলত "stream editor" হিসেবে কাজ করে, অর্থাৎ এটি ইনপুট ডেটাকে স্ট্রিম হিসেবে গ্রহণ করে এবং তা সরাসরি পরিবর্তন করে ফাইল বা আউটপুটে প্রেরণ করে। Sed কে সাধারণত স্ক্রিপ্টিং এবং অটোমেশন প্রক্রিয়ায় টেক্সট ম্যানিপুলেশন করার জন্য ব্যবহৃত হয়। এটি মূলত একটি non-interactive টুল, যার মানে হলো, আপনি যেভাবে কমান্ড প্রদান করবেন, সেই অনুযায়ী এটি কাজ করবে এবং কোনো ব্যবহারকারী ইন্টারঅ্যাকশন ছাড়াই কাজটি করবে।


Sed এর মৌলিক ধারণা

Sed এর মূল কাজ হলো টেক্সট ফাইল বা স্ট্রিমের মধ্যে নির্দিষ্ট পরিবর্তন করা। এটি search, replace, insert, এবং delete অপারেশনগুলো করতে সক্ষম। আপনি ফাইলের একটি নির্দিষ্ট প্যাটার্ন খুঁজে সেটি মুছে ফেলতে বা পরিবর্তন করতে পারেন, অথবা নতুন কিছু যোগ করতে পারেন।

Sed এর মধ্যে সবচেয়ে সাধারণ কাজগুলোর মধ্যে রয়েছে:

  1. টেক্সট পরিবর্তন (Search and Replace)
  2. লাইনের মুছে ফেলা (Delete lines)
  3. নতুন লাইন যোগ করা (Add new lines)
  4. টেক্সট ফরম্যাটিং (Text formatting)
  5. রেগুলার এক্সপ্রেশন (Regular Expressions)

Sed Syntax (সিনট্যাক্স)

Sed এর সাধারণ সিনট্যাক্স হলো:

sed [options] 'command' input-file

এখানে:

  • [options]: Sed এর বিভিন্ন অপশন (যেমন -i ইন-প্লেস পরিবর্তনের জন্য)
  • 'command': Sed এর দেওয়া কমান্ড (যেমন সারে, ডিলিট, ইনসার্ট)
  • input-file: যে ফাইল বা স্ট্রিমের সাথে Sed কাজ করবে

Sed সাধারণত এক বা একাধিক কমান্ড গ্রহণ করে। প্রতিটি কমান্ড একটি নির্দিষ্ট কাজ সম্পাদন করে।


Sed এর মৌলিক কমান্ডসমূহ

  1. Search and Replace (সার্চ এবং রিপ্লেস)
    Sed ব্যবহার করে আপনি কোনো টেক্সট প্যাটার্ন খুঁজে তাকে প্রতিস্থাপন করতে পারেন। সবচেয়ে সাধারণ কমান্ড হলো s/pattern/replacement/

    সিনট্যাক্স:

    sed 's/old_text/new_text/' file.txt

    এখানে:

    • s: সার্চ এবং রিপ্লেস অপারেশন নির্দেশ করে।
    • old_text: খুঁজে বের করা হবে এমন টেক্সট।
    • new_text: পুরানো টেক্সটের জায়গায় প্রতিস্থাপন হবে।
    • file.txt: যেখানে টেক্সট পরিবর্তন হবে।

    উদাহরণ:

    sed 's/cat/dog/' file.txt

    এই কমান্ডটি file.txt ফাইলে প্রথম "cat" শব্দটি "dog"-এ প্রতিস্থাপন করবে।

  2. Global Replacement (গ্লোবাল রিপ্লেসমেন্ট)
    যদি আপনি একটি লাইনে সমস্ত occurrences পরিবর্তন করতে চান, তাহলে g ফ্ল্যাগ ব্যবহার করতে হয়।

    সিনট্যাক্স:

    sed 's/old_text/new_text/g' file.txt

    উদাহরণ:

    sed 's/cat/dog/g' file.txt

    এই কমান্ডটি file.txt ফাইলে সমস্ত "cat" শব্দকে "dog"-এ পরিবর্তন করবে।

  3. Delete Line (লাইন মুছে ফেলা)
    Sed দিয়ে আপনি নির্দিষ্ট লাইন মুছে ফেলতে পারেন। এটি d কমান্ডের মাধ্যমে করা হয়।

    সিনট্যাক্স:

    sed 'line_numberd' file.txt

    উদাহরণ:

    sed '3d' file.txt

    এই কমান্ডটি file.txt থেকে তৃতীয় লাইনটি মুছে ফেলবে।

  4. Add Line (লাইন যোগ করা)
    Sed দিয়ে আপনি একটি নির্দিষ্ট লাইনের পরে অথবা আগে নতুন লাইন যোগ করতে পারেন। এটি a (add) অথবা i (insert) কমান্ড দিয়ে করা হয়।

    সিনট্যাক্স:

    sed 'line_numbera new_line' file.txt

    অথবা

    sed 'line_numberi new_line' file.txt

    উদাহরণ:

    sed '2a This is a new line' file.txt

    এই কমান্ডটি file.txt এর দ্বিতীয় লাইনের পরে "This is a new line" যোগ করবে।

  5. Print Line (লাইন প্রিন্ট করা)
    আপনি কিছু নির্দিষ্ট লাইন প্রিন্ট করতে p কমান্ড ব্যবহার করতে পারেন।

    সিনট্যাক্স:

    sed -n '/pattern/p' file.txt

    উদাহরণ:

    sed -n '/dog/p' file.txt

    এটি file.txt থেকে "dog" শব্দযুক্ত লাইনগুলো প্রদর্শন করবে।

  6. In-place Editing (ইন-প্লেস এডিটিং)
    আপনি ফাইলের মধ্যে সরাসরি পরিবর্তন করতে -i অপশন ব্যবহার করতে পারেন। এটি কমান্ডটি ফাইলের পরিবর্তন করবে এবং ফাইলের মধ্যে সেভ করবে।

    সিনট্যাক্স:

    sed -i 's/old_text/new_text/g' file.txt

    উদাহরণ:

    sed -i 's/cat/dog/g' file.txt

    এটি file.txt ফাইলে সমস্ত "cat" শব্দকে "dog"-এ প্রতিস্থাপন করবে এবং তা সরাসরি সেভ করবে।


Sed এর কিছু বিশেষ অপশন

  1. -e: একাধিক Sed কমান্ড রান করতে -e অপশন ব্যবহার করা হয়।

    উদাহরণ:

    sed -e 's/cat/dog/' -e 's/dog/bird/' file.txt
  2. -n: এটি কোনো আউটপুট প্রদর্শন না করে শুধুমাত্র প্যাটার্ন ম্যাচ হলে আউটপুট প্রদর্শন করে।

    উদাহরণ:

    sed -n 's/cat/dog/p' file.txt

সারাংশ

Sed হলো একটি শক্তিশালী টুল যা টেক্সট ফাইলের মধ্যে পরিবর্তন করার জন্য ব্যবহৃত হয়। এর মৌলিক কমান্ডগুলোর মধ্যে রয়েছে search, replace, delete, insert, এবং print। Sed সাধারণত স্ক্রিপ্টিং, অটোমেশন এবং সিস্টেম অ্যাডমিনিস্ট্রেশনে ব্যবহৃত হয়, যেখানে আপনাকে দ্রুত এবং কার্যকরভাবে টেক্সট পরিবর্তন করতে হয়।

Content added By
Promotion

Are you sure to start over?

Loading...