এই নিবন্ধটি ব্যাখ্যা করবে কিভাবে uniq ব্যবহার করতে হয় ফাইলগুলিতে বারবার লাইনগুলি খুঁজে পেতে বা ফিল্টার করতে এবং কিছু ব্যবহারের উদাহরণ প্রদান করতে লিনাক্সে কমান্ড দিন।
uniq কমান্ড হল একটি সাধারণ কমান্ড যা সরবরাহকৃত ইনপুট বা ফাইলে বারবার লাইনগুলি আউটপুট বা বাদ দেয়৷
uniq কমান্ড সিনট্যাক্স
uniq-এর জন্য সিনট্যাক্স কমান্ড নিম্নরূপ:
uniq OPTIONS INPUT OUTPUT
মনে রাখবেন:
- বিকল্পগুলি৷ নীচের টেবিল থেকে বিকল্পগুলির একটি তালিকা
- ইনপুট
- পড়ার জন্য ফাইলের পথ হওয়া উচিত
- *স্ট্যান্ডার্ড ইনপুট *ও ব্যবহার করা যেতে পারে
- আউটপুট ফাইল হওয়া উচিত যেখানে uniq-এর ফলাফল কমান্ড সংরক্ষিত হয়
- যদি সরবরাহ করা না হয়, স্ট্যান্ডার্ড আউটপুট ব্যবহার করা হবে (ডিফল্টরূপে, এটি কনসোলে ফলাফল প্রিন্ট করে)
যদি ইনপুট বা আউটপুট ফাইলগুলি সংজ্ঞায়িত করা না থাকে, তাহলে আপনি ইনপুট এবং আউটপুট uniq-এ পুনঃনির্দেশিত করতে পারেন STDIN এবং STDOUT ব্যবহার করে কমান্ড - এটি কীভাবে করতে হয় সে সম্পর্কে আরও তথ্যের জন্য এই নিবন্ধটি দেখুন৷
বিকল্পগুলি
নীচের সারণীটি ব্যবহারকারীর ম্যানুয়াল থেকে সাধারণত ব্যবহৃত বিকল্পগুলি তালিকাভুক্ত করে:
-c | সংঘটনের সংখ্যা দ্বারা উপসর্গ লাইন |
-d | শুধুমাত্র ডুপ্লিকেট লাইন প্রিন্ট করুন, প্রতিটি গ্রুপের জন্য একটি |
-D | সকল ডুপ্লিকেট লাইন প্রিন্ট করুন |
-i | তুলনা করার সময় পার্থক্য উপেক্ষা করুন |
-s | প্রথম N অক্ষরের তুলনা করা এড়িয়ে চলুন |
-u | শুধুমাত্র অনন্য লাইন প্রিন্ট করুন |
আপনি uniq-এর জন্য সম্পূর্ণ ব্যবহারকারীর ম্যানুয়াল দেখতে পারেন চালানোর মাধ্যমে কমান্ড:
man uniq
ইউনিক কমান্ডের উদাহরণ
উদাহরণ ফাইল
নিম্নলিখিত উদাহরণগুলি তাদের ইনপুট হিসাবে নিম্নলিখিত উদাহরণ ফাইলটি ব্যবহার করবে:
movies.txt
Dirty Harry Dirty Harry Total Recall Bride of Frankenstein Total Recall Demolition Man
ডিফল্ট আচরণ - বারবার লাইন অপসারণ
ডিফল্টরূপে, uniq কমান্ড বারবার লাইন মুছে ফেলবে।
uniq movies.txt
যা আউটপুট করবে:
Dirty Harry Total Recall Bride of Frankenstein Total Recall Demolition Man
মনে রাখবেন যে বারবার লাইনগুলি সরানো হয়েছে৷ সদৃশ নয়। শুধুমাত্র সংলগ্ন, অভিন্ন রেখাগুলি সরানো হয়েছে৷৷
পুনরাবৃত্তির সংখ্যা দেখানো হচ্ছে
-c অপশনটি প্রতিটি লাইনকে যতবার পুনরাবৃত্তি করা হয়েছে তার সাথে প্রিপেন্ড করবে:
uniq -c movies.txt
যা আউটপুট:
2 Dirty Harry 1 Total Recall 1 Bride of Frankenstein 1 Total Recall 1 Demolition Man
শুধুমাত্র লাইন দেখান যা পুনরাবৃত্তি হয় না
-u বিকল্পটি কেবলমাত্র লাইনগুলি দেখাবে যা পুনরাবৃত্তি হয় না:
uniq -u movies.txt
যা আউটপুট করবে:
Total Recall Bride of Frankenstein Total Recall Demolition Man
শুধুমাত্র লাইনগুলি দেখান যা পুনরাবৃত্তি হয়
-d বিকল্প শুধুমাত্র পুনরাবৃত্তি লাইন দেখাবে:
uniq -d movies.txt
যা আউটপুট করবে:
Dirty Harry
আবার - নোট করুন যে বারবার লাইনগুলি অন্তর্ভুক্ত বা বাদ দেওয়া হয়েছে৷ নকল লাইন নয়। শুধুমাত্র সন্নিহিত, অভিন্ন রেখাগুলি uniq দ্বারা প্রক্রিয়া করা হয়৷ আদেশ!
ফলাফল সংরক্ষণ করা হচ্ছে
সেই ফাইলে ফলাফলগুলি সংরক্ষণ করতে কমান্ডে চূড়ান্ত প্যারামিটার হিসাবে একটি ফাইলের নাম পাস করুন:
uniq -d movies.txt duplicated.txt
স্ট্যান্ডার্ড পুনঃনির্দেশ ব্যবহার করা
উপরে উল্লিখিত হিসাবে, ইনপুট এবং আউটপুট ফাইলগুলি uniq-এ সরবরাহ করার প্রয়োজন নেই আদেশ।
স্ট্যান্ডার্ড রিডাইরেকশন অন্যান্য কমান্ড এবং অ্যাপ্লিকেশনের আউটপুটকে ইউনিকে নির্দেশ করতে পারে, যেটির নিজস্ব আউটপুট অন্য প্রোগ্রাম বা ফাইলে পুনঃনির্দেশিত হতে পারে।
cat movies.txt | uniq > output.txt
উপরের উদাহরণে, ক্যাট কমান্ডটি উদাহরণ ফাইলটি পড়ার জন্য ব্যবহার করা হয় - এবং এর আউটপুটটি তারপরে অনন্য এ পাইপ করা হয় আদেশ তারপর ইউনিক কমান্ডটি > ব্যবহার করে একটি ফাইলে তার আউটপুট পুনঃনির্দেশিত করে অপারেটর।
স্পষ্টতই, এটি ইনপুট/আউটপুট ফাইলগুলির পাথগুলি সরবরাহ করার জন্য কোনও অতিরিক্ত কার্যকারিতা প্রদান করে না। তবুও, কমান্ড থেকে আউটপুট কিভাবে পাইপ/রিডাইরেক্ট করা যায় তার একটি স্পষ্ট উদাহরণ।