วิธีค้นหาไฟล์ใน Linux Terminal
Linux ไม่ว่าคุณจะใช้ distro ใด มาพร้อมกับเครื่องมือ GUI จำนวนมากที่อนุญาตให้ค้นหาไฟล์ได้ ตัวจัดการไฟล์ที่ทันสมัยจำนวนมากรองรับการค้นหาไฟล์ในรายการไฟล์ อย่างไรก็ตาม มีหลายสถานการณ์เมื่อคุณจำเป็นต้องใช้คอนโซล เช่น ระหว่างเซสชัน SSH หรือเมื่อเซิร์ฟเวอร์ X ไม่เริ่มทำงาน นี่คือวิธีที่คุณสามารถค้นหาไฟล์ได้อย่างรวดเร็วโดยใช้เทอร์มินัล
โฆษณา
นอกจากนี้ยังมี Catfish ซึ่งเป็นเครื่องมือค้นหายอดนิยมที่มีดัชนีการค้นหา ซึ่งสามารถค้นหาไฟล์ของคุณได้รวดเร็วมาก
ฉันต้องการแบ่งปันวิธีการที่ฉันใช้เองเมื่อฉันทำงานในเทอร์มินัล
วิธีแรกเกี่ยวข้องกับยูทิลิตี find ซึ่งมีอยู่ใน distro ใด ๆ แม้แต่ในระบบฝังตัวที่สร้างบน busybox วิธีอื่นคือคำสั่งค้นหา
วิธีค้นหาไฟล์ในเทอร์มินัล Linuxให้ทำดังต่อไปนี้
- เปิดแอปเทอร์มินัลที่คุณชื่นชอบ ขั้ว XFCE4 เป็นความชอบส่วนตัวของฉัน
- พิมพ์คำสั่งต่อไปนี้:
ค้นหา /path/to/folder/ -iname *file_name_portion*
อาร์กิวเมนต์ข้างต้นมีดังนี้:
/path/to/folder/ - โฟลเดอร์ที่จะเริ่มต้นการค้นหา หากไม่ได้ระบุไว้ การค้นหาจะเริ่มขึ้นในไดเร็กทอรีปัจจุบัน
สวิตช์ที่ฉันใช้:
-iname - ค้นหาไฟล์และโฟลเดอร์ที่มีส่วนที่ระบุในชื่อและละเว้นตัวพิมพ์ข้อความตัวอย่าง:
นี่คือคำสั่งที่ฉันสามารถใช้เพื่อค้นหาบทความที่ฉันเขียนเกี่ยวกับเบราว์เซอร์ Opera:
ค้นหา ~/Documents/winaero/ -iname *opera*.txt
- หากคุณต้องการค้นหาเฉพาะไฟล์หรือเฉพาะโฟลเดอร์ ให้เพิ่มตัวเลือก -พิมพ์f สำหรับไฟล์หรือ -พิมพ์ d สำหรับไดเร็กทอรี นี่คือตัวอย่างบางส่วน:
- หากต้องการค้นหาไฟล์และไดเร็กทอรีที่แก้ไขล่าสุด คุณสามารถใช้ตัวเลือกต่อไปนี้ของ หา สั่งการ:
-mmin n - ค้นหาไฟล์ที่แก้ไขเมื่อ n นาทีที่แล้ว -mtime n - ค้นหาไฟล์ที่แก้ไขเมื่อ n*24 ชั่วโมงที่แล้ว เมื่อพบว่ามีการเข้าถึงไฟล์ครั้งล่าสุดในช่วง 24 ชั่วโมงที่ผ่านมาเท่าใด เศษส่วนใดๆ จะถูกละเว้น ดังนั้นเพื่อให้ตรงกับ -mtime +1 ไฟล์ต้องได้รับการแก้ไขอย่างน้อยสองวันที่แล้ว - เป็นไปได้ที่จะรันคำสั่งสำหรับไฟล์ที่พบในคำค้นหาของคุณ ดูตัวอย่างต่อไปนี้:
ค้นหา ~/Documents/winaero/ -iname opera45.txt -type f -exec vim {} \;
ที่นี่เราใช้ตัวเลือก -exec เพื่อเรียกใช้ เป็นกลุ่ม โปรแกรมแก้ไขข้อความสำหรับไฟล์ทั้งหมดในผลการค้นหา ส่วน "{} " หมายถึงไฟล์ที่พบโดย หา สั่งการ. NS "\;" ending ระบุจุดสิ้นสุดของคำสั่งสำหรับ -exec ตัวเลือก.
คำสั่งค้นหา
เครื่องมือค้นหาตำแหน่งใช้ฐานข้อมูลไฟล์พิเศษเพื่อค้นหาไฟล์ในทันที ดัชนีสำหรับคำสั่งสามารถสร้างและอัปเดตได้โดย อัพเดทb สั่งการ. ในขณะที่ผลการค้นหาปรากฏขึ้นทันที คุณต้องรักษาดัชนีการค้นหาและทำให้เป็นปัจจุบัน มิฉะนั้น คำสั่งค้นหาสามารถค้นหาไฟล์ที่ถูกลบหรือย้ายไปยังไดเร็กทอรีอื่น
ในกรณีทั่วไป ไวยากรณ์จะเป็นดังนี้
ค้นหา -i file_name
ตัวเลือก -i หมายถึง "ละเว้นตัวพิมพ์ข้อความ"
นี่คือตัวอย่าง:
เคล็ดลับพิเศษ: อีกวิธีหนึ่งที่ฉันมักใช้คือ Midnight Commander (mc) แอปตัวจัดการไฟล์คอนโซล ไม่เหมือนกับการค้นหาหรือระบุตำแหน่ง mc ไม่ได้รวมอยู่โดยค่าเริ่มต้นใน Linux distros ทั้งหมดที่ฉันได้ลอง คุณอาจต้องติดตั้งด้วยตัวเอง
ค้นหาไฟล์ด้วย mc
หากต้องการค้นหาไฟล์ที่มีข้อความเฉพาะโดยใช้ Midnight Commander ให้เปิดแอปและกดตามลำดับต่อไปนี้บนแป้นพิมพ์:
Alt + กะ + ?
ซึ่งจะเปิดกล่องโต้ตอบการค้นหา
กรอกข้อมูลในส่วน "ชื่อไฟล์:" แล้วกดปุ่ม Enter จะค้นหาไฟล์ทั้งหมดที่ตรงกับเกณฑ์
คุณสามารถวางไฟล์เหล่านี้ในแผงด้านซ้ายหรือด้านขวาโดยใช้ปุ่ม เสวนา ตัวเลือกและคัดลอก/ย้าย/ลบ/ดู/ทำทุกอย่างที่คุณต้องการกับพวกเขา
แค่นั้นแหละ.