การเรียงลำดับและลบข้อมูลซ้ำ (sort, uniq, cut)
เปลี่ยนข้อความดิบให้เป็นข้อมูลที่สะอาดและเรียงลำดับ เรียนรู้การเรียงบรรทัด การลบข้อมูลซ้ำด้วย uniq และการดึงคอลัมน์ด้วย cut จากนั้นนำคำสั่งเหล่านี้มาต่อกันเป็นสายการประมวลผล
การเรียงลำดับและลบข้อมูลซ้ำ (sort, uniq, cut) เป็นบทเรียน Linux Command Line & Bash Scripting Mastery ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Linux Command Line & Bash Scripting Mastery และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Linux Command Line & Bash Scripting Mastery มีบทเรียนทั้งหมด 4 บทเรียน
จัดรูปข้อมูลข้อความ
ไฟล์บันทึกและไฟล์ CSV ล้วนเป็นบรรทัดข้อความ เครื่องมือคลาสสิกสามอย่างสำหรับจัดรูปข้อมูลเหล่านี้ ได้แก่ sort ใช้เรียงบรรทัด uniq ใช้ลบรายการซ้ำ และ cut ใช้ดึงคอลัมน์
การเรียงลำดับพื้นฐาน
sort จะเรียงบรรทัดตามตัวอักษรเป็นค่าเริ่มต้นและแสดงผลลัพธ์
sort names.txtการเรียงลำดับตัวเลข
sort แบบปกติจะมองตัวเลขเป็นข้อความ (10 มาก่อน 2) ใช้ -n เพื่อเรียงตามค่าตัวเลขจริง และใช้ -r เพื่อเรียงย้อนกลับ
sort -n sizes.txt
sort -nr sizes.txt # largest firstการเรียงตามฟิลด์
ใช้ -k เพื่อเรียงตามคอลัมน์ที่ระบุ และใช้ -t เพื่อตั้งตัวคั่น
sort -t: -k3 -n /etc/passwd # by UIDลบรายการซ้ำด้วย uniq
uniq จะรวมบรรทัดซ้ำที่อยู่ติดกันเข้าด้วยกัน โดยทำงานได้เฉพาะกับข้อมูลนำเข้าที่เรียงลำดับแล้ว ดังนั้นจึงมักใช้คู่กับ sort
sort access.log | uniqนับจำนวนครั้งที่ปรากฏ
uniq -c จะเติมจำนวนครั้งที่แต่ละบรรทัดปรากฏไว้ด้านหน้า เหมาะอย่างยิ่งสำหรับการวิเคราะห์ความถี่
sort ips.txt | uniq -cค้นหารายการที่พบบ่อยที่สุด
รวม sort, uniq -c และ sort อีกครั้งเพื่อจัดอันดับรายการตามความถี่ เป็นรายงาน "top N" ในคำสั่งเดียว
sort ips.txt | uniq -c | sort -nr | head -5ดึงคอลัมน์ด้วย cut
cut ดึงฟิลด์จากแต่ละบรรทัด ใช้ -d สำหรับตัวคั่น และใช้ -f สำหรับหมายเลขฟิลด์
cut -d, -f1,3 data.csv # 1st and 3rd columnsตัดตามอักขระ
cut -c ดึงช่วงอักขระตามตำแหน่ง เหมาะสำหรับข้อมูลที่มีความกว้างคงที่
cut -c1-8 dates.txt # first 8 charsบรรทัดไม่ซ้ำกับบรรทัดซ้ำ
uniq -d แสดงเฉพาะบรรทัดที่ซ้ำกัน ส่วน uniq -u แสดงเฉพาะบรรทัดที่ปรากฏเพียงครั้งเดียว
sort orders.txt | uniq -d # repeated onlyสร้างไปป์ไลน์
พลังที่แท้จริงอยู่ที่การต่อคำสั่งเข้าด้วยกัน: ดึงคอลัมน์ เรียงลำดับ แล้วนับค่าที่ไม่ซ้ำ เพื่อสรุปชุดข้อมูลด้วยคำสั่งเดียว
cut -d, -f2 sales.csv | sort | uniq -c | sort -nrตรวจสอบอย่างรวดเร็ว
ทดสอบความเข้าใจของคุณ
สรุปทบทวน
คุณได้เรียนรู้การจัดรูปข้อมูลด้วย sort (ตามตัวอักษร ตามตัวเลขด้วย -n และตามฟิลด์ด้วย -k), uniq (ลบบรรทัดที่ซ้ำติดกัน, นับจำนวนด้วย -c, ใช้ -d/-u) และ cut (ฟิลด์ด้วย -d/-f และอักขระด้วย -c) แล้วนำมาต่อกันเป็นไปป์ไลน์ที่ทรงพลัง
คำถามที่พบบ่อย
บทเรียน “การเรียงลำดับและลบข้อมูลซ้ำ (sort, uniq, cut)” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การเรียงลำดับและลบข้อมูลซ้ำ (sort, uniq, cut)” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Linux Command Line & Bash Scripting Mastery ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Linux Command Line & Bash Scripting Mastery มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การเรียงลำดับและลบข้อมูลซ้ำ (sort, uniq, cut)”
เปลี่ยนข้อความดิบให้เป็นข้อมูลที่สะอาดและเรียงลำดับ เรียนรู้การเรียงบรรทัด การลบข้อมูลซ้ำด้วย uniq และการดึงคอลัมน์ด้วย cut จากนั้นนำคำสั่งเหล่านี้มาต่อกันเป็นสายการประมวลผล คุณปฏิบัติ Linux Command Line & Bash Scripting Mastery ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Linux Command Line & Bash Scripting Mastery หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Linux Command Line & Bash Scripting Mastery บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน
บทเรียน “การเรียงลำดับและลบข้อมูลซ้ำ (sort, uniq, cut)” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Linux Command Line & Bash Scripting Mastery นี้ได้ไหม
ได้ บทเรียน Linux Command Line & Bash Scripting Mastery ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- การจัดการข้อความขั้นสูง (sed, awk)
- การจัดเก็บและบีบอัดข้อมูล (tar, gzip, unzip)
- การใช้งานดิสก์และข้อมูลระบบ (df, du, uname)
- การเรียงลำดับและลบข้อมูลซ้ำ (sort, uniq, cut)