Linux regular Expressions in Grep
এই পোস্টে লিনাক্সে বহুল ব্যবহৃত রেগুলার এক্সপ্রেশন ‘grep’ কমান্ড নিয়ে আলাপ করা হবে। ‘grep’ এর পূর্ণ অর্থ হচ্ছে grep (global regular expression print)। লিনাক্স/ইউনিক্স ভিত্তিক অপারেটিং সিস্টেমে কোনও ফাইলের মধ্যে প্যাটার্ন/কীওয়ার্ড/স্ট্রিং (string) খোঁজার জন্য ‘grep’ কমান্ড ব্যবহার করা হয়। ‘grep’ ব্যবহার করে, কোনও ফাইলের মধ্যে প্যাটার্ন/কীওয়ার্ড/স্ট্রিং হিসেবে Character, Group Character, String (word), Group String, Paragraph সার্চ করা যায়। নিচে কিছু উদাহরণের মাধ্যমে ‘grep’ এর ব্যবহার দেখানো হয়েছেঃ
- কোনও ফাইলের মধ্যে নির্দিষ্ট কীওয়ার্ড/প্যাটার্ন খোঁজার করার জন্য নিচের কমান্ডঃ
[root@desktop ~]# grep ‘root’ /etc/passwd
- ‘grep’ কে cat, tail, head, less, more, cut এর সাথে পাইপলাইন (|) দিয়ে ব্যবহার করা যায়ঃ
[root@desktop ~]# cat /etc/passwd | grep ‘student’
- ফাইলের মধ্যে case in-sensitive প্যাটার্ন/কীওয়ার্ড খুঁজতে ‘-i’ অপশন ব্যবহার করতে হবেঃ
[root@desktop ~]# grep -i ‘ftp’ /etc/passwd
- একাধিক ফাইলের মধ্যে যদি প্যাটার্ন/কীওয়ার্ড খুঁজতে চাই, তাহলে নিচের কমান্ডঃ
[root@desktop ~]# grep -i ‘ftp’ /etc/passwd /etc/shadow
- নির্দির্ষ্ট প্যাটার্ন/কী-ওয়ার্ডের লাইন নাম্বার জানতে চাইলে, ‘–n’ অপশন ব্যবহার করতে হবেঃ
[root@desktop ~]# grep -n ‘student’ /etc/passwd
- নির্দির্ষ্ট প্যাটার্ন/কীওয়ার্ড বাদে (excluding) খুঁজতে চাই, ‘-v’ অপশন ব্যবহার করতে হবেঃ
[root@desktop ~]# grep -v ‘nologin’ /etc/passwd
- নির্দির্ষ্ট প্যাটার্ন/কীওয়ার্ড দিয়ে শুরুর লাইন বের করার জন্য (caret) সিম্বল ‘^’ ব্যবহার করতে হবেঃ
[root@desktop ~]# grep ^root /etc/passwd
• নির্দির্ষ্ট প্যাটার্ন/কীওয়ার্ড দিয়ে লাইন শেষ হয়েছে, এমন লাইন বের করার জন্য ‘$’ ( Dollar sign) ব্যবহার করতে হবেঃ
[root@desktop ~]# grep bash$ /etc/passwd
• একাধিক প্যাটার্ন/কীওয়ার্ড খুঁজতে চাইলে ‘-e’ অপশন ব্যবহার করতে হবেঃ
[root@desktop ~]# grep -e ‘root’ -e ‘student’ /etc/passwd
- ডিরেক্টরির সকল ফাইলের মধ্যে প্যাটার্ন/কীওয়ার্ড খুঁজতে চাইলে ‘-r’ অপশন ব্যবহার করতে হবেঃ
[root@desktop ~]# grep -r student /etc
- নির্দির্ষ্ট প্যাটার্ন/কীওয়ার্ডের আগে/পরে ০৪ (চার) টি লাইন প্রিন্ট করতে চাইলে, নিচের কমান্ডঃ
[root@desktop ~]# grep -A 4 “games” /etc/passwd
[root@desktop ~]# grep -B 4 “games” /etc/passwd
- সর্বমোট কত গুলো প্যাটার্ন/কীওয়ার্ড আছে, সেটা বের করতে ‘-c’ অপশন ব্যবহার করতে হবেঃ
[root@desktop ~]# grep -c ‘bash’ /etc/passwd
Search
Archives
- December 2024 (3)
- September 2023 (1)
- April 2023 (1)
- October 2021 (16)
- September 2021 (13)
- July 2021 (8)
- June 2021 (25)
- May 2021 (2)