Tôi sử dụng định vị mọi lúc để tìm các tệp mà tôi biết tên, xác định vị trí rất nhanh và tôi thích điều đó. Đối với các tệp được tạo gần đây, tìm kiếm rất tuyệt, thông thường với các tệp được tạo gần đây tôi biết cơ bản chúng được tạo ở đâu nên tôi không phải tìm kiếm toàn bộ hệ thống tệp của mình.
Khi tôi quên vị trí của một thư mục tuy nhiên không tìm thấy cũng không xác định vị trí có vẻ lý tưởng.
Định vị luôn phun ra quá nhiều thông tin vì mỗi tệp trong một thư mục cũng phù hợp để định vị. Chẳng hạn, nếu tôi đang tìm kiếm một thư mục có tên log ở đâu đó trên hệ thống tệp của tôi, nhật ký xác định vị trí sẽ trả về hàng tấn kết quả. Nếu tôi làm điều tương tự với find, find / -name log -type d find mất vài phút để chạy và phát ra tất cả các loại lỗi cấp phép mỗi khi nó gặp một thư mục mà nó không thể đọc được.
Có cách nào tốt hơn?
Trả lời: Vì vậy, tôi gắn bó với grep cho đến khi tôi tìm thấy một cái gì đó khác:
locatedir () {
for last; do true; done
if [[ $last == *\/* ]]
then
locate $@ | grep "${last}\$"
else
locate $@ | grep "/${last}\$"
fi
}
locate
có khả năng regex tích hợp riêng của nó:-r
hoặc--regex
... để có đầy đủ các tùy chọn xem: thông tin xác định vị trí