วิธีใช้คำสั่ง 'find' เพื่อค้นหาชื่อไฟล์หลายชื่อ (ส่วนขยาย) ใน Linux
หลายครั้งที่เราติดอยู่ในสถานการณ์ที่เราต้องค้นหาไฟล์หลายไฟล์ที่มีนามสกุลต่างกัน สิ่งนี้อาจเกิดขึ้นกับผู้ใช้ Linux หลายคน โดยเฉพาะจากภายในเทอร์มินัล
มียูทิลิตี้ Linux หลายตัวที่เราสามารถใช้เพื่อค้นหาหรือค้นหาไฟล์บนระบบไฟล์ แต่การค้นหาชื่อไฟล์หลายไฟล์หรือไฟล์ที่มีนามสกุลต่างกันในบางครั้งอาจยุ่งยากและต้องใช้คำสั่งเฉพาะ
หนึ่งในยูทิลิตี้มากมายสำหรับการค้นหาไฟล์บนระบบไฟล์ Linux คือยูทิลิตี้ find
และในคำแนะนำวิธีการนี้ เราจะอธิบายตัวอย่างบางส่วนของการใช้ find เพื่อ ช่วยเราค้นหาชื่อไฟล์หลายรายการพร้อมกัน
ก่อนที่เราจะเจาะลึกคำสั่งจริง ให้เราดูข้อมูลเบื้องต้นเกี่ยวกับยูทิลิตี find
ของ Linux ก่อน
ไวยากรณ์ที่ง่ายที่สุดและทั่วไปของยูทิลิตี find มีดังนี้:
find directory options [ expression ]
ให้เรามาดูตัวอย่างของคำสั่ง find ใน Linux ต่อไป
1. สมมติว่าคุณต้องการค้นหาไฟล์ทั้งหมดในไดเรกทอรีปัจจุบันที่มีนามสกุลไฟล์ .sh
และ .txt
คุณสามารถทำได้โดยการเรียกใช้ คำสั่งด้านล่าง:
find . -type f \( -name "*.sh" -o -name "*.txt" \)
การตีความคำสั่งด้านบน:
.
หมายถึงไดเร็กทอรีปัจจุบัน- ตัวเลือก
-type
ใช้เพื่อระบุประเภทไฟล์ และที่นี่ เรากำลังค้นหาไฟล์ปกติที่แสดงโดยf
- ตัวเลือก
-name
ใช้เพื่อระบุรูปแบบการค้นหาในกรณีนี้คือนามสกุลไฟล์ -o
หมายถึง “หรือ”
ขอแนะนำให้คุณใส่นามสกุลไฟล์ไว้ในวงเล็บ และใช้อักขระหลีก \
( แบ็กสแลช) เช่นเดียวกับในคำสั่ง
2. หากต้องการค้นหาชื่อไฟล์สามชื่อที่มีนามสกุล .sh
, .txt
และ .c
ให้ออกคำสั่งด้านล่าง:
find . -type f \( -name "*.sh" -o -name "*.txt" -o -name "*.c" \)
3. นี่เป็นอีกตัวอย่างที่เราค้นหาไฟล์ด้วย .png
, .jpg
, .deb
และ < รหัส>.pdf ส่วนขยาย:
find /home/aaronkilik/Documents/ -type f \( -name "*.png" -o -name "*.jpg" -o -name "*.deb" -o -name ".pdf" \)
เมื่อคุณสังเกตคำสั่งทั้งหมดข้างต้นอย่างมีวิจารณญาณ เคล็ดลับเล็กๆ น้อยๆ คือการใช้ตัวเลือก -o
ในคำสั่ง find ซึ่งช่วยให้คุณสามารถเพิ่มชื่อไฟล์ลงในอาร์เรย์การค้นหาได้ และ รวมถึงทราบชื่อไฟล์หรือนามสกุลไฟล์ที่คุณกำลังค้นหา
บทสรุป
ในคู่มือนี้ เราได้กล่าวถึงเคล็ดลับ ค้นหายูทิลิตี ที่เรียบง่ายแต่มีประโยชน์ เพื่อช่วยให้เราสามารถค้นหาชื่อไฟล์ได้หลายชื่อโดยใช้คำสั่งเดียว เพื่อทำความเข้าใจและใช้การค้นหาสำหรับการดำเนินการบรรทัดคำสั่งที่สำคัญอื่นๆ คุณสามารถอ่านบทความของเราด้านล่าง
อย่าพลาด: คำสั่ง 'find' ของ Master Linux พร้อมด้วย 35 ตัวอย่างนี้