ฉันใช้ค้นหาตลอดเวลาเพื่อค้นหาไฟล์ที่ฉันรู้ชื่อค้นหาเร็วมากและฉันก็ชอบ สำหรับการค้นหาไฟล์ที่สร้างขึ้นเมื่อเร็ว ๆ นี้พบว่ายอดเยี่ยมมากโดยปกติแล้วด้วยไฟล์ที่สร้างขึ้นเมื่อเร็ว ๆ นี้ฉันรู้ว่าไฟล์เหล่านั้นถูกสร้างขึ้นที่ไหนฉันจึงไม่ต้องค้นหาระบบไฟล์ทั้งหมดของฉัน
เมื่อฉันลืมตำแหน่งของไดเรกทอรี แต่ไม่พบหรือค้นหาดูเหมือนจะเหมาะ
ค้นหาจะคายข้อมูลมากเกินไปเพราะทุก ๆ ไฟล์ในไดเรกทอรีนั้นตรงกับตำแหน่ง ตัวอย่างเช่นถ้าฉันค้นหาไดเรกทอรีชื่อบันทึกที่ไหนสักแห่งในระบบไฟล์ของฉันค้นหาบันทึกจะส่งกลับผลลัพธ์ตันและตัน ถ้าฉันทำสิ่งเดียวกันกับ find ให้ค้นหา / -name log -type d find ใช้เวลาในการรันและแยกข้อผิดพลาดการอนุญาตทุกประเภททุกครั้งที่พบโฟลเดอร์ที่ไม่สามารถอ่านได้
มีวิธีที่ดีกว่า?
คำตอบ: ดังนั้นฉันจึงติดกับ grep จนกว่าฉันจะหาสิ่งอื่น:
locatedir () {
for last; do true; done
if [[ $last == *\/* ]]
then
locate $@ | grep "${last}\$"
else
locate $@ | grep "/${last}\$"
fi
}
locate
มีความสามารถในการ regex ของตัวเอง:-r
หรือ--regex
... สำหรับตัวเลือกอย่างเต็มรูปแบบดู: info