วิธีการค้นหาไฟล์ใน Linux
ต้องการทราบวิธีการที่มีประสิทธิภาพที่สุดในการค้นหาไฟล์บนกล่อง Linux หรือไม่ ดูคำแนะนำเล็กๆ ของเราที่นี่เพื่อดูคำสั่งที่ดีที่สุดและรูปแบบคำสั่งเหล่านั้น

มีหลายวิธีในการค้นหาไฟล์ในระบบ Linux แต่ละวิธีมีข้อดีและข้อเสียที่แตกต่างกันไป แต่เพื่อผลลัพธ์ที่ดีที่สุด ควรทราบวิธีการต่างๆ ให้ได้มากที่สุด
โปรแกรมกราฟิกมักมาพร้อมกับระบบค้นหาในตัว และแม้ว่าจะสะดวกสบาย แต่โปรแกรมเหล่านี้ก็มักจะมีข้อจำกัดอยู่บ้าง ซึ่งนี่คือจุดที่เครื่องมือค้นหาเชลล์มีประโยชน์ เนื่องจากมีคุณลักษณะต่างๆ ให้เลือกใช้งานมากขึ้น
รายการต่อไปนี้จะแสดงวิธีทั่วไปที่สุดในการค้นหาไฟล์ใน Linux รวมทั้งรูปแบบไวยากรณ์และการใช้งานสำหรับแต่ละโปรแกรม
โปรดทราบว่าคำสั่ง แรกเท่านั้น ที่ใช้ได้กับโปรแกรมแบบกราฟิก ส่วนคำสั่งอื่นๆ ใช้กับโปรแกรมแบบเชลล์
วิธีการค้นหา Linux
| คำสั่ง | รายละเอียด | |
|---|---|---|
| 1. | CTRL + F | เรียกใช้คุณสมบัติการค้นหาในโปรแกรม GUI ส่วนใหญ่ |
| 2. | พบ | เครื่องมือค้นหาที่ครอบคลุมพร้อมฟีเจอร์อันทรงพลัง |
| 3. | ค้นหา | เครื่องมือค้นหาที่ใช้ฐานข้อมูลอย่างรวดเร็ว |
| 4. | grep | เครื่องมือค้นหาที่มีประสิทธิภาพโดยใช้ regex |
| 5. | ที่ | ใช้ในการค้นหาไฟล์ที่ปฏิบัติการได้ |
| 6. | อยู่ไหน | ค้นหาไฟล์ปฏิบัติการ แหล่งที่มา และไฟล์คู่มือ |
1. CTRL+F
Ctrl+F เป็นฟีเจอร์มาตรฐานในโปรแกรมกราฟิกส่วนใหญ่ที่ใช้ค้นหาไฟล์ในระบบ ฟีเจอร์นี้ใช้ได้กับโปรแกรมจัดการไฟล์ Nautilus ของ Gnome โปรแกรมจัดการไฟล์ Dolphin ของ KDE และ Thunar โปรแกรมจัดการไฟล์ Xfce
นอกจากนี้ยังใช้งานได้กับโปรแกรมอื่นๆ มากมาย เช่น Evince สำหรับอ่านไฟล์ .pdf, เบราว์เซอร์ Firefox, โปรแกรม Office เช่น Libre Office และอื่นๆ อีกมากมาย
การใช้งานนั้นง่ายมาก ขณะใช้โปรแกรมและต้องการค้นหาไฟล์ ให้กดปุ่ม Ctrl และ F บนแป้นพิมพ์พร้อมกัน จากนั้นแถบค้นหาจะเปิดขึ้นในโปรแกรม
2 หา
ในการค้นหาสิ่งของบนแพลตฟอร์ม Linux โปรแกรม find ถือเป็นเครื่องมือหลักที่ได้รับความนิยมมากที่สุดในบรรดาเครื่องมือทั้งหมดในปัจจุบัน โปรแกรม find เป็นโปรแกรมที่มีความยืดหยุ่นและทรงพลังมาก โดยมีตัวเลือกมากมายเพื่อให้ทำงานได้ในหลากหลายรูปแบบ
โปรแกรมค้นหามีตัวเลือก ตัวดำเนินการ และรูปแบบการพิมพ์มากมาย จึงไม่สามารถอ่านและทำความเข้าใจได้ทั้งหมด คุณจะต้องอ่านหน้าคู่มือและข้อมูลอย่างต่อเนื่องหากต้องการเรียนรู้โปรแกรมค้นหา ต่อไปนี้คือตัวอย่างและการทำงานของโปรแกรมเหล่านี้:
ผู้ชายค้นหา > #อ่านหน้าคู่มือค้นหารายการ
ค้นหาข้อมูล > #อ่านข้อมูล ค้นหารายการ
รูปแบบทั่วไปของการค้นหามีดังนี้:
ค้นหา [ตัวเลือก] [เส้นทาง…] [นิพจน์]
โดยที่ตัวเลือกหมายถึงตัวเลือกต่างๆ มากมาย เส้นทางคือจุดที่คุณต้องการเริ่มการค้นหา และนิพจน์จะรวมถึงรูปแบบการค้นหาและตัวดำเนินการต่างๆ มากมายที่พร้อมให้ใช้งาน
อย่างไรก็ตาม มีตัวเลือกบางตัวที่คุณสามารถเรียนรู้และจดจำได้อย่างรวดเร็ว และมีดังต่อไปนี้:
ก) -ประเภท
การค้นหาไฟล์นี้จะอิงตามประเภทไฟล์ โดยอาจใช้ "f" สำหรับไฟล์ทั่วไป "d" สำหรับไดเร็กทอรี และ "l" สำหรับลิงก์สัญลักษณ์
ค้นหา -type f -name '*.js' #ค้นหาไฟล์ JavaScript ทั้งหมดในหน้าแรกของผู้ใช้
ข) -ชื่อ
ตามที่แสดงด้านบน การค้นหานี้จะค้นหาการเกิดขึ้นของรูปแบบที่กำหนด (*.js) ในชื่อไฟล์
ค) -mtime
ด้วยตัวเลือก -mtime คุณสามารถระบุเกณฑ์การค้นหาตามเวลา เช่น
find -mtime 7 #ค้นหาไฟล์ทั้งหมดที่ถูกแก้ไขในสัปดาห์ที่แล้ว (7 วัน)
ง) ขนาด
คุณยังสามารถใช้ขนาดไฟล์เป็นเกณฑ์ในการค้นหาได้ เช่น
ค้นหา -ขนาด +15k > #ค้นหาไฟล์ทั้งหมดในไดเร็กทอรีโฮมที่มีขนาดใหญ่กว่า 15 กิโลไบต์
โปรดทราบว่าอาร์กิวเมนต์ของตัวเลือกทั้งหมดสามารถใช้ตัวเลข – หรือ + เพื่อแสดงค่าที่น้อยกว่าหรือสูงกว่าได้ ตัวอย่างเช่น -2 สำหรับค่าที่น้อยกว่า 2 และ +15 สำหรับค่าที่มากกว่า 15 มีตัวเลือกอื่นๆ อีกมากมาย และคุณควรอ่านทั้งรายการ “man find” และ “info find” บนเชลล์ของคุณเพื่อทำความเข้าใจกับโปรแกรมอันทรงพลังนี้
3. ค้นหา
คำสั่ง locate เป็นเครื่องมือค้นหาอีกตัวหนึ่งบน Linux ที่น่าประทับใจ คำสั่งนี้ไม่ได้มีฟีเจอร์มากมายเท่าคำสั่ง find แต่เร็วกว่ามากเนื่องจากใช้รายการฐานข้อมูลเพื่อดำเนินการตามความมหัศจรรย์ของมัน
ฟังก์ชัน Locate นั้นใช้งานง่ายกว่าและคุณไม่จำเป็นต้องป้อนเส้นทางการค้นหา เพียงแค่ป้อน locate ตามด้วยรูปแบบสำหรับชื่อไฟล์ จากนั้นระบบจะแสดงไฟล์ทั้งหมดที่ตรงตามรูปแบบนั้น ตัวอย่างเช่น:
ค้นหา moz > #ค้นหาไฟล์ทั้งหมดที่มี 'moz' ในชื่อ เช่น mozilla
Locate ยังมีตัวเลือกให้เลือกใช้หลายตัวเลือก เช่น -i หรือ –ignore-case เนื่องจากเป็นเครื่องมือค้นหาที่คำนึงถึงตัวพิมพ์เล็ก/ใหญ่ ตัวอย่างเช่น:
locate -i moz > #ค้นหาไฟล์ที่มีชื่อทั้ง mozilla, MOZILLA และ Mozilla
4. เกรป
บางครั้งคุณอาจรู้จักคำบางคำที่อยู่ในไฟล์ ดังนั้นแม้ว่าคำสั่ง find และ locate อาจไม่เหมาะสำหรับการค้นหาไฟล์ดังกล่าว แต่คำสั่ง grep เหมาะอย่างยิ่งสำหรับงานนี้
Grep ย่อมาจาก Global Regular Expression Print โดยยอมรับ regex เป็นอาร์กิวเมนต์ และยังสามารถจัดรูปแบบผลลัพธ์ตามการตั้งค่าของคุณได้อีกด้วย โดยสามารถระบายสีคำที่ตรงกัน พิมพ์หมายเลขบรรทัด หรือพิมพ์เฉพาะชื่อของไฟล์ที่ตรงกันเท่านั้น
โปรดจำไว้ว่า grep จะจับคู่ทั้งชื่อไฟล์และเนื้อหาไฟล์ และคุณยังสามารถระบุรูปแบบสำหรับแต่ละรายการได้อีกด้วย ไวยากรณ์ของ grep มีดังนี้:
grep [ตัวเลือก] ไฟล์ 'รูปแบบ'
มีตัวเลือกมากมายให้เลือกใช้และคุณสามารถรวมตัวเลือกเหล่านี้เข้าด้วยกันได้ตามต้องการ แต่คุณจะได้รับประโยชน์สูงสุดจาก grep หากคุณเรียนรู้ regex (นิพจน์ทั่วไป) เนื่องจากตัวเลือกเหล่านี้มีประโยชน์มาก ข้อมูลและหน้าคู่มือยังอธิบายสิ่งนี้ได้ดีมากอีกด้วย
ต่อไปนี้เป็นตัวอย่าง grep บางส่วนและสิ่งที่พวกมันทำ:
grep 'foobar' > #ค้นหาไฟล์ทั้งหมดที่มี foobar ในไดเร็กทอรีปัจจุบัน
grep -in 'foobar' > #ไม่คำนึงถึงตัวพิมพ์เล็ก-ใหญ่ และพิมพ์หมายเลขบรรทัด
grep -inr 'foobar' /home/user > #ค้นหาโฟลเดอร์ทั้งหมดภายใต้ /home/user ซ้ำๆ
grep -ir 'table' *.html > #ค้นหาไฟล์ html ทั้งหมดที่มีตารางในไดเร็กทอรีโฮม
5. ข้อใด
หากด้วยเหตุผลบางประการ คุณจำเป็นต้องทราบเส้นทางที่แน่นอนของไฟล์ปฏิบัติการใน Linux ให้ใช้คำสั่ง which ซึ่งทำงานดังนี้:
ซึ่ง grep > #returns /bin/grep บน Ubuntu เป็นเส้นทางสัมบูรณ์ของ grep
ซึ่งซึ่ง > #ส่งคืน /usr/bin/which
6. อยู่ที่ไหน
Whereis มีลักษณะคล้ายกับ which แต่จะส่งคืนไฟล์ไบนารี ซอร์ส และเพจคู่มือสำหรับคำสั่งที่กำหนด นี่คือตัวอย่าง:
โดยที่ grep > #ส่งคืนเฉพาะไฟล์ไบนารีและ man /bin/grep /usr/share/man/man1/grep.1.gz
สรุป
เราได้มาถึงขั้นตอนสุดท้ายของวิธีค้นหาไฟล์ในรายการคำสั่ง Linux แล้ว อย่างที่คุณเห็น มีเครื่องมือและตัวเลือกมากมายในเชลล์ ดังนั้นจึงมีบางอย่างสำหรับทุกคน
ใช้เวลาของคุณเรียนรู้และฝึกฝนเครื่องมือเหล่านี้ และอย่าลืมอ่านข้อมูลและคู่มือของเครื่องมือเหล่านี้ด้วย ไม่นาน คุณจะค้นหาไฟล์บน Linux ได้อย่างมีประสิทธิภาพมากขึ้น




