इसे आप बिल्ट-इन कमांड्स के साथ आसानी से कर सकते हैं।
- फ़ाइल की सामग्री फ़ीड
sort
। हमें अगले चरण के लिए इसकी आवश्यकता है।
- यह जाता है
uniq -c
। यह प्रत्येक पंक्ति की अद्वितीय घटना की गणना करेगा। यदि इसी तरह की रेखाएं आसन्न नहीं हैं, तो यह पहले छंटाई किए बिना काम नहीं करेगा।
- फिर, इसे दूसरे को खिलाएं
sort
, जो अब उलट क्रम में ( r
) और आउटपुट के संख्यात्मक ( n
) व्याख्या पर आधारित है uniq
। हमें संख्यात्मक विकल्प की आवश्यकता है अन्यथा, संख्याओं के सामने का स्थान गलत परिणाम देगा ( अधिक के लिए जीएनयू sort
की सहायता देखें )।
- अंत में, केवल पहली बारह पंक्तियों के साथ दिखाएं
head
।
कमांड तब होगी:
sort test.txt | uniq -c | sort -rn | head -n 12
यहां आउटपुट में वास्तविक घटनाओं की गणना होती है।
केवल लाइनों की कच्ची सूची प्राप्त करने के लिए, आप आउटपुट को sed
निम्न पर पाइप कर सकते हैं :
sort test.txt | uniq -c | sort -rn | head -n 12 | sed -E 's/^ *[0-9]+ //g'
उदाहरण:
I'm not there very often
I'm not there very often
Look at me!
Look at me!
Look at me!
Hello there!
Hello there!
Hello there!
Hello there!
Hello there!
Hello there!
पहले कमांड से आउटपुट, लेकिन केवल 2 का चयन head
:
6 Hello there!
3 Look at me!
दूसरी कमांड से आउटपुट:
Hello there!
Look at me!