locate Trình tạo lệnh
Tạo các lệnh locate để tìm tập tin theo tên từ cơ sở dữ liệu đã được xây dựng sẵn
Bắt đầu với locate
## locate là gì?
`locate` tìm kiếm các tập tin theo tên bằng cách sử dụng cơ sở dữ liệu đã được xây dựng sẵn (do `updatedb` quản lý), vì vậy việc tìm kiếm gần như diễn ra ngay lập tức — nhanh hơn rất nhiều so với `find`. Nhược điểm là kết quả phản ánh trạng thái của cơ sở dữ liệu, vốn thường được cập nhật một lần mỗi ngày; do đó các tập tin mới nhất có thể bị thiếu và các tập tin đã xóa vẫn có thể xuất hiện trong kết quả.
## Cách sử dụng
1. **Đặt tùy chọn**: Bật/tắt chế độ không phân biệt chữ hoa chữ thường, chỉ đếm số lượng, giới hạn kết quả, hoặc sử dụng biểu thức chính quy. 2. **Nhập mẫu tìm kiếm**: Gõ mẫu tên tập tin cần tìm (mặc định là kiểu glob). 3. **Sao chép và chạy**: Dán lệnh được tạo ra vào terminal của bạn.
Nếu kết quả có vẻ lỗi thời, hãy cập nhật cơ sở dữ liệu bằng `sudo updatedb`
Các tùy chọn phổ biến
### Mẫu (theo vị trí) Mẫu tên tệp cần được so khớp. Theo mặc định, `locate` coi đó là một biểu thức glob của shell có thể xuất hiện ở bất kỳ đâu trong đường dẫn, vì vậy `locate.conf` sẽ so khớp với `/etc/nginx/nginx.conf`.
### `-i` Bỏ qua chữ viết hoa/thường So khớp các mẫu một cách không phân biệt chữ viết hoa/thường — `locate -i README` cũng sẽ tìm thấy `readme.md` và `Readme.txt`.
### `-c` Chỉ đếm số lượng Chỉ in ra số lượng tệp được so khớp thay vì tên của chúng. Rất hữu ích để thống kê nhanh trong các script.
### `-l N` Giới hạn số lượng kết quả Giới hạn số kết quả ở mức N — ví dụ, `-l 10` sẽ in tối đa mười kết quả, tránh tình trạng màn hình bị tràn khi thực hiện các truy vấn rộng.
### `-r REGEX` Xử lý như regex Diễn giải mẫu như một biểu thức chính quy cơ bản thay vì một biểu thức glob, ví dụ: `-r '^/etc/.*\.conf$'`.
### `-w` Không gian trắng linh hoạt So khớp các ký tự không gian trắng trong mẫu với bất kỳ ký tự không gian trắng nào trong tên tệp, rất hữu ích khi tên tệp chứa dấu cách.
### `-d DB` Cơ sở dữ liệu tùy chỉnh Sử dụng t
▶Sự khác biệt giữa locate, whereis và which là gì?
▶Tại sao lệnh locate lại hiển thị những tập tin vừa bị tôi xóa (hoặc bỏ sót những tập tin mới)?
▶Làm thế nào để tìm kiếm một cách bất kể chữ hoa chữ thường và giới hạn kết quả?
Nếu công cụ này đã giúp ích cho bạn, hãy nghĩ đến việc mua một cốc cà phê cho tôi.
Hãy mua cho tôi một cốc cà phê nhé.