কম্পিউটার টিউটোরিয়াল

লিনাক্স uniq কমান্ড মাস্টার করুন: সম্পূর্ণ গাইড ও প্র্যাকটিক্যাল উদাহরণ

এই আর্টিকেলে ব্যাখ্যা করা হয়েছে লিনাক্সে uniq কমান্ড কিভাবে ব্যবহার করবেন ফাইলে রিপিটেড লাইন খুঁজে বের বা ফিল্টার করার জন্য এবং কিছু ইউজেজ উদাহরণ।

uniq কমান্ড একটি সিম্পল কমান্ড যা সাপ্লাইড ইনপুট বা ফাইলে রিপিটেড লাইন আউটপুট করে অথবা বাদ দেয়।

uniq কমান্ড সিনট্যাক্স

uniq কমান্ডের সিনট্যাক্স নিচের মতো:

uniq OPTIONS INPUT OUTPUT

নোট করুন:

  • OPTIONS হলো নিচের টেবিল থেকে অপশন লিস্ট
  • INPUT হওয়া উচিত ফাইলের পথ যা পড়া হবে
    • *স্ট্যান্ডার্ড ইনপুট *ও ব্যবহার করা যায়
  • OUTPUT হওয়া উচিত ফাইল যেখানে uniq কমান্ডের রেজাল্ট সেভ হবে
    • যদি সাপ্লাই না করা থাকে, স্ট্যান্ডার্ড আউটপুট ব্যবহার হবে (ডিফল্টলি কনসোলে প্রিন্ট করে)

ইনপুট বা আউটপুট ফাইল ডিফাইন না করলে, STDIN এবং STDOUT ব্যবহার করে uniq কমান্ডের সাথে ইনপুট এবং আউটপুট রিডাইরেক্ট করা যায় - কিভাবে করবেন সেটার জন্য এই আর্টিকেল চেক করুন।

অপশন

ইউজার ম্যানুয়াল থেকে সাধারণ ব্যবহৃত অপশনগুলো নিচের টেবিলে:

-c লাইনগুলোর আগে অকরেন্স সংখ্যা প্রিফিক্স করুন
-d শুধু ডুপ্লিকেট লাইন প্রিন্ট করুন, প্রতিটি গ্রুপের জন্য একটা
-D সকল ডুপ্লিকেট লাইন প্রিন্ট করুন
-i তুলনা করার সময় কেস ডিফারেন্স ইগনোর করুন
-s প্রথম N ক্যারেক্টার তুলনা এড়িয়ে যান
-u শুধু ইউনিক লাইন প্রিন্ট করুন

uniq কমান্ডের ফুল ইউজার ম্যানুয়াল দেখতে চালান:

man uniq

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 কমান্ডে ইনপুট এবং আউটপুট ফাইল সাপ্লাই করা বাধ্যতামূলক নয়।

স্ট্যান্ডার্ড রিডাইরেকশন অন্য কমান্ড এবং অ্যাপ্লিকেশনের আউটপুটকে uniq-এ ডাইরেক্ট করতে পারে, যা তারপর নিজের আউটপুট অন্য প্রোগ্রাম বা ফাইলে রিডাইরেক্ট করতে পারে।

cat movies.txt | uniq > output.txt

উপরের উদাহরণে, cat কমান্ড উদাহরণ ফাইল পড়ে - এবং সেই আউটপুট পাইপ করা হয়েছে unique কমান্ডে। uniq কমান্ড তারপর আউটপুট > অপারেটর ব্যবহার করে একটি ফাইলে রিডাইরেক্ট করে।

জाहির কর এই পদ্ধতিটি ইনপুট/আউটপুট ফাইল পাস করার চেয়ে এক্সট্রা ফাংশনালিটি দেয় না। তবে, কমান্ডের আউটপুট কীভাবে অন্য কমান্ডে পাইপ/রিডাইরেক্ট করা যায় সেটার একটি স্পষ্ট উদাহরণ।

  1. Linux FIND কমান্ড উদাহরণ সহ সম্পূর্ণ গাইড

  2. লিনাক্স এবং কমান্ড লাইন মাস্টার করার ৫টি কোর্স

  3. এসেনশিয়াল লিনাক্স ls কমান্ড: ফাইল ও ডিরেক্টরি দ্রুত ও কার্যকরভাবে লিস্ট করুন

  4. Linux Watch কমান্ড 습득: সিনট্যাক্স, অপশন এবং প্রয়োগিক উদাহরণ