লিনাক্সে কীভাবে সেড ব্যবহার করবেন

সেড স্ট্রিম এডিটর মানে। এটি লিনাক্সের জন্য একটি কমান্ড লাইন ভিত্তিক সম্পাদক। লিনাক্সে একটি অটোমেশন স্ক্রিপ্টের অংশ হিসাবে ফাইল(গুলি) সম্পাদনা করার জন্য sed-এর জনপ্রিয় ব্যবহার, স্বাভাবিক সম্পাদকদের সক্রিয় ব্যবহারকারীর ইনপুট প্রয়োজন এবং সম্পাদক পর্দার বাইরে ফাইলগুলি সম্পাদনা করতে পারে না। কমান্ড লাইন থেকে অনুসন্ধান এবং প্রতিস্থাপন করার জন্য Sed সবচেয়ে বেশি ব্যবহৃত হয়।

এই ধরনের টেক্সট এডিটরকে একটি নন ইন্টারেক্টিভ টেক্সট এডিটর হিসেবেও শ্রেণীবদ্ধ করা যেতে পারে।

Sed ব্যবহার করে ফাইল এডিট করার জন্য কিছু সাধারণ অপশন দেখি। আমরা উদাহরণ হিসাবে নিম্নলিখিত ফাইল নেব:

$: cat test.txt একটি দ্রুত বাদামী কুকুর অলস বিড়ালের উপর ঝাঁপিয়ে পড়ে। লিনাক্স অপারেটিং সিস্টেম। আমার জায়গার কাছের বনে একটি বিড়াল এবং নেকড়েও রয়েছে। 

অনুসন্ধান এবং প্রতিস্থাপন

একটি ফাইলে একটি স্ট্রিং অনুসন্ধান করতে এবং অন্য স্ট্রিং দিয়ে প্রতিস্থাপন করতে, চালান:

sed -i "s/cat/fox/g" test.txt

এখানে -i ফ্ল্যাগ ফাইলে পরিবর্তনগুলি লিখতে sed ​​নির্দেশ দেয়। এই পতাকা ছাড়া, sed পরিবর্তিত স্ট্রিং সহ ফাইলটি প্রদর্শন করবে।

উদ্ধৃতি, আমরা আছে s/cat/fox/g. দ্য s এর অনুসন্ধান এবং প্রতিস্থাপন কমান্ডের জন্য sed. তারপর আমরা অনুসন্ধান করা স্ট্রিং আছে, যা বিড়াল. তারপরে এটির সাথে প্রতিস্থাপন করার জন্য স্ট্রিং, যেমন, শিয়াল. অবশেষে, আমরা ঐচ্ছিক আছে g, যা নির্দেশ দেয় sed ফাইলের সমস্ত লাইনে সমস্ত ঘটনা প্রতিস্থাপন করতে। ছাড়া g, sed শুধুমাত্র প্রথম সংঘটন প্রতিস্থাপন করবে বিড়াল প্রতিটি লাইনে।

এখানেও Regex ব্যবহার করা যেতে পারে।

sed -i "s/f[a-z]*\./cat\./g"

ঢোকান

একটি মিলিত স্ট্রিং সহ একটি লাইনের আগে পাঠ্য সন্নিবেশ করতে, ব্যবহার করুন:

sed -i "/cat/i শুরু:" test.txt

এখানে, বিড়াল অনুসন্ধান করা স্ট্রিং এবং শুরু: স্ট্রিং হল লাইনের আগে যেখানে সার্চ করা স্ট্রিং পাওয়া যায়।

একইভাবে, একটি লাইনের পরে পাঠ্য সন্নিবেশ করতে, ব্যবহার করুন:

sed -i "/fox/a End।" test.txt

মুছে ফেলা

একটি সাবস্ট্রিং সহ একটি লাইন মুছতে, ব্যবহার করুন:

sed -i "/Linux/d" test.txt

লাইন নম্বর সহ একটি লাইন মুছতে, যেমন। প্রথম লাইন, ব্যবহার করুন:

sed -i '1d' test.txt

একাধিক ফাংশন সমন্বয়

একাধিক ফাংশন একত্রিত করতে, যেমন. অনুসন্ধান এবং প্রতিস্থাপন, মুছে ফেলা, একটি কমান্ডে, -ই পতাকা ব্যবহার করা যেতে পারে।

sed -i -e "s/fox/cat/g" -e '2d' test.txt

? চিয়ার্স!