การค้นหาด้วยlocate
ค้นหาพา ธ ในระบบไฟล์
บ่อยครั้งที่คุณรู้ว่าคุณมีความสนใจในไฟล์อย่างใดอย่างหนึ่งเท่านั้นหรือไดเรกทอรีเท่านั้น
การค้นหา 'ค้นหา' มักจะส่งคืนผลลัพธ์จำนวนมาก มันจะมีประโยชน์ที่จะรวมเพียงหนึ่งประเภทในผลลัพธ์เพราะจะช่วยให้ผลผลิตสั้นลง
แต่มีข้อโต้แย้งที่น่าสนใจที่จะทิ้งไฟล์หรือไดเรคทอรีไว้อย่างใดอย่างหนึ่งเนื่องจากรายการของพา ธ ผลลัพธ์สามารถคลุมเครือไม่เพียง แต่ในทางทฤษฎี
ตัวอย่างด้านล่างเป็นกรณีของโลกแห่งความจริงและไม่ผิดปกติ:
$ locate --regex --basename "xfce4-keyboard-overlay$"
/usr/local/bin/xfce4-keyboard-overlay
/usr/local/share/xfce4-keyboard-overlay
ตกลงเราพบบางอย่าง! แต่ ... ไฟล์หรือไดเรกทอรี?
$ file /usr/local/bin/xfce4-keyboard-overlay
/usr/local/bin/xfce4-keyboard-overlay: bash script
นั่นคือไฟล์ ...
$ file /usr/local/share/xfce4-keyboard-overlay
/usr/local/share/xfce4-keyboard-overlay: directory
ในขณะที่สองไม่ใช่
ความคลุมเครือนี้คือการทำให้รายการยาวของเส้นทางยากที่จะอ่านดังนั้นมันจะดีจริงๆไดเรกทอรีกรองออกเช่นใช้ตัวเลือกบรรทัด comman locate
สำหรับ
สิ่งนี้มีอยู่จริงหรือไม่? แม้ว่าตัวกรองสำหรับไดเรกทอรีแยกจากการค้นหาหรือไม่
อย่างน้อยหนึ่งสามารถใช้สคริปต์เพื่อวนซ้ำชื่อไฟล์ทั้งหมดเพื่อตรวจสอบ - ซึ่งอาจช้า
while
คำสั่งของคุณไม่?