UNIQ COMMAND

UNIQ COMMAND

Uniq command เป็นคำสั่งที่ใช้ในการ filter สิ่งที่เกิดขึ้นซ้ำในไฟล์หรือในผลลัพธ์ใดๆจากการใช้งาน | เราสามารถนับจำนวนครั้งที่เกิดซ้ำหรือว่าเอาส่วนที่ซ้ำทิ้งก็ได้เช่นกัน รวมถึงการเปรียบเทียบ field ที่ต้องการ โดยในที่นี้เราจะใช้ไฟล์ชื่อว่า list.txt มี content เป็น
Screen Shot 2562-08-24 at 14.55.17.png
จะเห็นว่า test3 เป็นเพียงสิ่งเดียวที่ติดกันและซ้ำกัน เมื่อเราใช้คำสั่ง uniq จะได้ผลลัพธ์เป็น
Screen Shot 2562-08-24 at 14.56.12.png
จะเห็นว่า test3 นั้นหายไปแถวหนึ่ง เพราะสืบเนื่องด้วย test3 เป็นบรรทัดเดียวที่ติดกันและมีค่าซ้ำกันนั่นเอง เราสามารถเรียงให้บรรทัดที่เหมือนกันติดกันได้ด้วยคำสั่ง
sort
โดยจะใช้คำสั่งเป็น
sort list.txt | uniq
จะเห็นว่าผลลัพธ์ออกมาเหลือเพียงแต่ละบรรทัดที่ไม่ซ้ำกันเท่านั้น
Screen Shot 2562-08-24 at 14.58.37.png

ตัวอย่างเพิ่มเติม

  • หากเราต้องการนับว่าแต่ละบรรทัดที่เกิดขึ้นซ้ำนั้นกี่บรรทัด จะใช้ -c option ซึ่งใช้คำสั่งเป็น
uniq -c list.txt
Screen Shot 2562-08-24 at 15.00.34.png
  • แสดงผลเฉพาะบรรทัดที่ซ้ำจะใช้ -d option ซึ่งใช้คำสั่งเป็น
uniq -d list.txt
Screen Shot 2562-08-24 at 15.01.50.png
  • แสดงผลเฉพาะบรรทัดที่ไม่ซ้ำจะใช้ -u option ซึ่งใช้คำสั่งเป็น
uniq -u list.txt
Screen Shot 2562-08-24 at 15.02.34.png

Comments

Popular Posts