Skip to content

Thủ Thuật Plus

  • Sample Page

Thủ Thuật Plus

  • Home » 
  • Thủ Thuật Máy Tính » 
  • So Sánh Locate, Find, Whereis: Khi Nào Nên Sử Dụng Lệnh Tìm Kiếm File Linux Nào?

So Sánh Locate, Find, Whereis: Khi Nào Nên Sử Dụng Lệnh Tìm Kiếm File Linux Nào?

By Administrator Tháng 8 20, 2025 0
Tìm kiếm tệp bằng tên với lệnh locate trên terminal Ubuntu.
Table of Contents

Trong môi trường Linux, việc tìm kiếm tệp và thư mục là một kỹ năng cơ bản nhưng cực kỳ quan trọng. Hệ điều hành này cung cấp nhiều công cụ mạnh mẽ để thực hiện tác vụ này, bao gồm các lệnh phổ biến như locate, find và whereis. Mỗi lệnh lại có ưu điểm, nhược điểm và mục đích sử dụng riêng. Hiểu rõ cách thức hoạt động và trường hợp ứng dụng tối ưu của từng lệnh tìm kiếm file Linux sẽ giúp bạn tiết kiệm thời gian, nâng cao hiệu suất làm việc và giải quyết vấn đề hiệu quả hơn. Bài viết này sẽ đi sâu vào từng lệnh, phân tích cách chúng hoạt động và đưa ra lời khuyên về việc khi nào nên lựa chọn công cụ nào để tìm kiếm dữ liệu trên hệ thống Linux của bạn.

Lệnh locate: Tìm kiếm siêu tốc dựa trên Database

Lệnh locate được thiết kế để tìm kiếm tệp và thư mục dựa trên tên hoặc một phần tên của chúng, và nó thực hiện điều này gần như ngay lập tức. Tốc độ vượt trội của locate đến từ cơ chế hoạt động độc đáo: thay vì quét hệ thống tệp theo thời gian thực, nó truy vấn một cơ sở dữ liệu được xây dựng sẵn. Cơ sở dữ liệu này thường có tên là mlocate.db, plocate.db hoặc đơn giản là locate.db, tùy thuộc vào bản phân phối Linux bạn đang sử dụng.

Tuy nhiên, chính cơ chế này cũng là nhược điểm của locate. Vì cơ sở dữ liệu không được cập nhật theo thời gian thực, nếu bạn vừa tạo hoặc xóa một tệp, lệnh locate có thể sẽ không nhận biết được sự thay đổi đó cho đến khi cơ sở dữ liệu được cập nhật lần tiếp theo. Quá trình cập nhật cơ sở dữ liệu này thường được thực hiện định kỳ bởi một tiến trình hệ thống, điển hình là thông qua một cron job chạy hàng ngày. Bạn cũng có thể tự cập nhật cơ sở dữ liệu theo cách thủ công bằng cách sử dụng lệnh sudo updatedb, mặc dù việc lập chỉ mục toàn bộ hệ thống tệp có thể mất một khoảng thời gian nhất định.

Cú pháp cơ bản của lệnh locate khá đơn giản và dễ nhớ:

locate -i filename

Tìm kiếm tệp bằng tên với lệnh locate trên terminal Ubuntu.Tìm kiếm tệp bằng tên với lệnh locate trên terminal Ubuntu.

Nếu tệp tồn tại và cơ sở dữ liệu đã được cập nhật, locate sẽ liệt kê tất cả các đường dẫn chứa “my_script.sh”. Tùy chọn -i cho phép tìm kiếm không phân biệt chữ hoa, chữ thường.

Bạn cũng có thể tìm kiếm tất cả các tệp có phần mở rộng cụ thể, đếm số lượng kết quả phù hợp bằng tùy chọn -c, hoặc giới hạn số lượng đầu ra bằng tùy chọn -n. Lệnh locate hỗ trợ khớp mẫu ký tự đại diện (wildcard pattern matching) và thậm chí cả biểu thức chính quy cơ bản, mang lại nhiều quyền kiểm soát hơn cho các tìm kiếm của bạn.

locate vs. mlocate vs. plocate: Sự tiến hóa của tìm kiếm

Qua thời gian, tiện ích locate gốc đã được thay thế trong hầu hết các bản phân phối Linux bằng mlocate. mlocate giới thiệu những cải tiến quan trọng, chẳng hạn như tôn trọng quyền người dùng, giúp bạn chỉ thấy được các tệp mà bạn có quyền truy cập.

Khi mlocate được cài đặt, nó sẽ cung cấp chính lệnh locate. Do đó, ngay cả khi bạn gõ locate, bạn thực chất đang chạy mlocate ở chế độ nền. Bạn có thể xác nhận điều này bằng cách kiểm tra phiên bản:

locate --version

Kiểm tra phiên bản của công cụ dòng lệnh locate trên terminal Ubuntu.Kiểm tra phiên bản của công cụ dòng lệnh locate trên terminal Ubuntu.

Lệnh này sẽ hiển thị phiên bản locate nào đang xử lý các tìm kiếm của bạn.

Gần đây hơn, một triển khai mới có tên plocate đã bắt đầu thay thế mlocate trong một số bản phân phối. plocate nhanh hơn và hiệu quả hơn, sử dụng chỉ mục nén để giảm thời gian tìm kiếm và mức sử dụng đĩa, đặc biệt hữu ích trên các hệ thống có số lượng tệp lớn. Fedora, chẳng hạn, hiện đang sử dụng plocate theo mặc định, và nhiều bản phân phối khác đang bắt đầu làm theo.

Bạn cũng có thể cài đặt plocate bằng trình quản lý gói mặc định của mình, ví dụ trên Ubuntu, chạy lệnh:

sudo apt install plocate

Cài đặt công cụ dòng lệnh plocate trong Ubuntu bằng trình quản lý APT.Cài đặt công cụ dòng lệnh plocate trong Ubuntu bằng trình quản lý APT.

Một lần nữa, ngay cả khi plocate được cài đặt, lệnh bạn gõ vẫn là locate, vì vậy không có gì thay đổi trong cách bạn sử dụng nó. Đối với hầu hết người dùng, chức năng và cú pháp là như nhau, tuy nhiên, một vài tùy chọn nâng cao có thể hơi khác nhau giữa mlocate và plocate.

Lệnh find: Tìm kiếm Real-time với Tiêu chí đa dạng

Không giống như lệnh locate, lệnh find tìm kiếm tệp và thư mục theo thời gian thực bằng cách trực tiếp duyệt qua hệ thống phân cấp thư mục mà bạn chỉ định. Nó không phụ thuộc vào một cơ sở dữ liệu, có nghĩa là nó luôn trả về thông tin cập nhật nhất. Tuy nhiên, điều này cũng đồng nghĩa với việc nó có thể chậm hơn locate, đặc biệt khi tìm kiếm trên các hệ thống tệp lớn.

Điều làm cho find nổi bật là khả năng tìm kiếm dựa trên một loạt các tiêu chí đa dạng — không chỉ tên, mà còn loại, kích thước, quyền, quyền sở hữu, thời gian sửa đổi và nhiều hơn nữa. Hơn nữa, find còn có thể thực thi các lệnh tùy ý (như rm, cp, hoặc chmod) trên các tệp mà nó tìm thấy bằng cách sử dụng tùy chọn -exec.

Dưới đây là cú pháp cơ bản của lệnh find:

find [path] [options] [expression]
  • path: Nơi bắt đầu tìm kiếm (sử dụng . cho thư mục hiện tại).
  • options & expression: Tìm kiếm cái gì và cách lọc kết quả.

Ví dụ, để tìm một tệp có tên config.xml trong thư mục chính của bạn và các thư mục con của nó, hãy chạy:

find /home/your_username -name "config.xml"

Tương tự như locate, find có thể thực hiện tìm kiếm không phân biệt chữ hoa, chữ thường bằng cách sử dụng tùy chọn -iname (insensitive name):

find /var/log -iname "error*.log"

Lệnh này sẽ tìm các tệp như error.log, Error.Log và ERROR-messages.log trong /var/log.

Bạn cũng có thể tìm kiếm các loại tệp cụ thể. Ví dụ, để tìm tất cả các thư mục (d) trong đường dẫn hiện tại, hãy sử dụng:

find . -type d

Hoặc bạn có thể tìm các tệp lớn hơn bất kỳ kích thước nào, ví dụ 100 MB (+100M) trong thư mục /opt của bạn với:

find /opt -size +100M

Tìm các tệp dựa trên kích thước được chỉ định bằng lệnh find.Tìm các tệp dựa trên kích thước được chỉ định bằng lệnh find.

Ngoài ra, bạn có thể tìm kiếm các tệp rỗng, thư mục rỗng, hoặc các mục dựa trên thời gian sửa đổi cụ thể của chúng. Bạn cũng có thể chạy các lệnh khác trên mỗi tệp tìm thấy bằng find, chẳng hạn như xóa tất cả các tệp .tmp với lệnh sau:

find . -name "*.tmp" -exec rm {} ;

Lệnh whereis: Định vị Binaries, Source và Man Pages

Lệnh whereis khá khác biệt so với locate và find. Trong khi hai lệnh đầu tiên là công cụ tìm kiếm tệp đa năng, whereis có một nhiệm vụ rất cụ thể: định vị tệp nhị phân (binary/executables), tệp mã nguồn (source files) và các trang hướng dẫn sử dụng (man pages) cho một lệnh cụ thể.

Lệnh này đặc biệt hữu ích khi bạn đang cố gắng hiểu cách một lệnh được cài đặt trên hệ thống của mình hoặc khi bạn đang khắc phục sự cố với việc thực thi chương trình.

Không giống như locate và find, whereis chỉ tìm kiếm trong một tập hợp các thư mục được xác định trước nơi các loại tệp này thường được lưu trữ – những nơi như /bin, /usr/bin và /usr/local/bin cho các tệp nhị phân; /usr/share/man cho các trang hướng dẫn sử dụng; và các thư mục mã nguồn khác nhau.

Ví dụ, nếu bạn muốn tìm tệp nhị phân ls, mã nguồn của nó (nếu có), và các trang man của nó, bạn có thể chạy:

whereis ls

Tìm đường dẫn thực thi bằng lệnh whereis.Tìm đường dẫn thực thi bằng lệnh whereis.

Lệnh này sẽ cho bạn biết tệp nhị phân ls nằm ở “/bin/ls” và trang man của nó nằm ở “/usr/share/man/man1/ls.1.gz”.

Nếu bạn chỉ quan tâm đến đường dẫn thực thi, hãy sử dụng tùy chọn -b (binary):

whereis -b ls

Để chỉ tìm các trang hướng dẫn sử dụng, hãy sử dụng tùy chọn -m (man):

whereis -m bash

Bạn cũng có thể hỏi whereis về nhiều lệnh cùng lúc:

whereis grep sed awk

Tìm đường dẫn thực thi của nhiều lệnh bằng tiện ích whereis.Tìm đường dẫn thực thi của nhiều lệnh bằng tiện ích whereis.

Thông thường, các tệp mã nguồn không được cài đặt theo mặc định. Trong những trường hợp như vậy, đầu ra có thể chỉ bao gồm tên lệnh nếu không tìm thấy mã nguồn ở các vị trí tiêu chuẩn.

Khi Nào Sử Dụng Từng Lệnh Tìm Kiếm File Linux Nào?

Bạn nên sử dụng lệnh locate khi bạn muốn có một cái nhìn tổng quan nhanh chóng, trên toàn hệ thống về nơi các tệp cụ thể với một tên nhất định tồn tại. Lệnh này cũng hoạt động tốt nhất khi bạn khá chắc chắn rằng tệp không phải là tệp mới tạo, hoặc bạn đã cập nhật cơ sở dữ liệu gần đây.

Mặt khác, lệnh find phù hợp hơn khi bạn cần tìm kiếm dựa trên các tiêu chí khác ngoài tên, chẳng hạn như kích thước tệp, loại, quyền hoặc ngày sửa đổi. Nó đặc biệt hữu ích khi bạn muốn tìm kiếm sâu trong một cây thư mục cụ thể, hoặc khi tệp bạn đang tìm kiếm có thể là tệp mới và chưa được đưa vào cơ sở dữ liệu của locate. find cũng rất mạnh mẽ khi bạn cần kết quả theo thời gian thực hoặc muốn thực hiện các hành động như xóa, sao chép hoặc thay đổi quyền trên các tệp mà bạn tìm thấy.

Lệnh whereis hữu ích khi bạn cần định vị chính xác tệp nhị phân thực thi, tệp mã nguồn hoặc các trang hướng dẫn sử dụng của một lệnh. Nó đặc biệt có giá trị khi bạn đang khắc phục sự cố với biến PATH của hệ thống hoặc cố gắng hiểu một chương trình được cài đặt ở đâu và như thế nào.

Đôi khi, nhu cầu của bạn có thể trùng lặp giữa cả ba lệnh. Ví dụ, nếu locate trả về quá nhiều kết quả, bạn có thể sử dụng đầu ra của nó để thu hẹp đường dẫn bắt đầu cho một tìm kiếm find chính xác hơn. Các lệnh này không loại trừ lẫn nhau – chúng hoạt động tốt nhất khi được sử dụng cùng nhau như một phần trong bộ công cụ Linux của bạn.

Việc nắm vững cách sử dụng các lệnh tìm kiếm file Linux như locate, find, và whereis sẽ nâng cao đáng kể hiệu quả làm việc của bạn trên hệ điều hành này. Mỗi lệnh đều có điểm mạnh riêng và được thiết kế để giải quyết các vấn đề tìm kiếm cụ thể. Bằng cách chọn đúng công cụ cho từng tác vụ, bạn không chỉ tìm thấy thông tin mình cần nhanh hơn mà còn quản lý hệ thống Linux một cách chuyên nghiệp hơn.

Bạn có kinh nghiệm hay mẹo nào khác khi sử dụng các lệnh tìm kiếm này không? Hãy chia sẻ ý kiến của bạn trong phần bình luận bên dưới hoặc khám phá thêm các bài viết khác về thủ thuật Linux trên websitethuthuatplus.net để nâng cao kỹ năng của mình nhé!

Share
facebookShare on FacebooktwitterShare on TwitterpinterestShare on Pinterest
linkedinShare on LinkedinvkShare on VkredditShare on ReddittumblrShare on TumblrviadeoShare on ViadeobufferShare on BufferpocketShare on PocketwhatsappShare on WhatsappviberShare on ViberemailShare on EmailskypeShare on SkypediggShare on DiggmyspaceShare on MyspacebloggerShare on Blogger YahooMailShare on Yahoo mailtelegramShare on TelegramMessengerShare on Facebook Messenger gmailShare on GmailamazonShare on AmazonSMSShare on SMS
Post navigation
Previous post

Sạc Anker 140W 4 Cổng: Giải Pháp Sạc Toàn Diện Cho Mọi Thiết Bị Công Nghệ

Next post

Thời Lượng Game: Tại Sao Game Ngắn, Chất Lượng Cao Mới Là Tương Lai Của Trải Nghiệm Giải Trí?

Administrator

Related Posts

Categories Thủ Thuật Máy Tính So Sánh Locate, Find, Whereis: Khi Nào Nên Sử Dụng Lệnh Tìm Kiếm File Linux Nào?

Khám Phá Các Tính Năng Mới Đột Phá Trên Windows 11 Với Trợ Lý AI Copilot

Categories Thủ Thuật Máy Tính So Sánh Locate, Find, Whereis: Khi Nào Nên Sử Dụng Lệnh Tìm Kiếm File Linux Nào?

Cách Nhúng Video TikTok, Instagram, X (Twitter) Trực Tiếp Vào Discord

Categories Thủ Thuật Máy Tính So Sánh Locate, Find, Whereis: Khi Nào Nên Sử Dụng Lệnh Tìm Kiếm File Linux Nào?

KDE Plasma 6.3.0 Ra Mắt: Nâng Tầm Sáng Tạo và Trải Nghiệm Người Dùng Linux

Leave a Comment Hủy

Recent Posts

  • Hướng Dẫn Sử Dụng TalkBack Trên Android Để Duyệt Web Hiệu Quả
  • Khám Phá Top 8 Minigame Ấn Tượng Nhất Series Yakuza/Like a Dragon Không Thể Bỏ Qua
  • Các Máy Chơi Game Retro Tốt Nhất Năm 2025: Sống Lại Kỷ Niệm Trên Phần Cứng Hiện Đại
  • Anker Triệu Hồi Thêm 5 Mẫu Sạc Dự Phòng Phổ Biến: Kiểm Tra Ngay Thiết Bị Của Bạn!
  • Khám phá 6 công dụng bất ngờ của cổng USB-C trên Samsung Galaxy của bạn

Recent Comments

Không có bình luận nào để hiển thị.
Copyright © 2025 Thủ Thuật Plus - Powered by Nevothemes.
Offcanvas
Offcanvas

  • Lost your password ?