Lệnh find trong linux với các ví dụ dễ hiểu

Lệnh find trong Linux là một công cụ mạnh mẽ để tìm kiếm tập tin và thư mục dựa trên nhiều tiêu chí khác nhau. Bạn có thể sử dụng nó để lọc theo tên, kích thước, thời gian sửa đổi, quyền truy cập và nhiều thuộc tính khác. Với find, việc quản lý và tìm kiếm dữ liệu trên hệ thống Linux trở nên dễ dàng và hiệu quả hơn rất nhiều.

Lệnh find trong linux là gì?

Lệnh command find in linux là một công cụ mạnh mẽ giúp bạn tìm kiếm tập tin và thư mục dựa trên nhiều tiêu chí khác nhau trong hệ thống Linux. Nó cho phép bạn xác định vị trí các tệp tin theo tên, kích thước, thời gian sửa đổi, quyền truy cập và nhiều thuộc tính khác một cách dễ dàng. Với lệnh find, bạn có thể nhanh chóng tìm thấy những tập tin cần thiết, ngay cả khi bạn không nhớ chính xác vị trí của chúng. Đây là một công cụ không thể thiếu cho bất kỳ người dùng Linux nào muốn quản lý hệ thống của mình một cách hiệu quả. Hãy làm quen với lệnh find để làm chủ hệ thống Linux của bạn nhé!

Tìm Hiểu Các Khái Niệm Cơ Bản về Lệnh find

Trong bước này, bạn sẽ học cách sử dụng cơ bản lệnh find trong Linux. Lệnh find là một công cụ mạnh mẽ để tìm kiếm file và thư mục dựa trên nhiều tiêu chí.

Các tiêu chí có thể là tên, loại file, kích thước và nhiều thuộc tính khác nữa. Hãy bắt đầu bằng cách tìm hiểu cú pháp cơ bản của lệnh find:

find [path] [expression]
  • [path]: Đường dẫn đến thư mục hoặc cây thư mục bạn muốn tìm kiếm file. Nếu không chỉ định, thư mục hiện tại sẽ được sử dụng.
  • [expression]: Các tiêu chí được sử dụng để tìm kiếm file, ví dụ như tên file, loại file, kích thước, v.v.

Bây giờ, hãy thử một vài ví dụ cơ bản để làm quen với lệnh find:

  1. Tìm kiếm tất cả các file trong thư mục hiện tại:

    find .

    Ví dụ kết quả:

    .
    ./file1.txt
    ./file2.txt
    ./directory1
    ./directory1/file3.txt
  2. Tìm kiếm tất cả các file có đuôi .txt trong thư mục hiện tại:

    find . -name "*.txt"

    Ví dụ kết quả:

    ./file1.txt
    ./file2.txt
    ./directory1/file3.txt
  3. Tìm kiếm tất cả các thư mục trong thư mục hiện tại:

    find . -type d

    Ví dụ kết quả:

    .
    ./directory1
  4. Tìm kiếm tất cả các file lớn hơn 1 megabyte (MB) trong thư mục hiện tại:

    find . -size +1M

    Ví dụ kết quả:

    ./large_file.zip

Lệnh find cung cấp nhiều tùy chọn và biểu thức hơn để tinh chỉnh các tìm kiếm của bạn. Trong các bước tiếp theo, bạn sẽ khám phá các trường hợp sử dụng nâng cao hơn của lệnh find.

Tìm kiếm Tệp theo Tên và Loại Tệp

Trong bước này, bạn sẽ học cách sử dụng lệnh find để tìm kiếm tệp dựa trên tên và loại tệp.

  1. Tìm kiếm tệp theo tên:

    Để tìm kiếm tệp theo tên, bạn có thể sử dụng tùy chọn -name, theo sau là tên tệp hoặc mẫu wildcard.

    find . -name "file1.txt"

    Ví dụ về đầu ra:

    ./file1.txt

    Bạn cũng có thể sử dụng các mẫu wildcard để tìm kiếm nhiều tệp có tên tương tự.

    find . -name "*.txt"

    Ví dụ về đầu ra:

    ./file1.txt
    ./file2.txt
    ./directory1/file3.txt
  2. Tìm kiếm tệp theo loại tệp:

    Để tìm kiếm tệp theo loại, bạn có thể sử dụng tùy chọn -type, theo sau là ký tự loại tệp. Các ký tự loại tệp phổ biến là:

    • f: tệp thông thường
    • d: thư mục
    • l: liên kết tượng trưng
    find . -type f -name "*.txt"

    Ví dụ về đầu ra:

    ./file1.txt
    ./file2.txt
    ./directory1/file3.txt
    find . -type d

    Ví dụ về đầu ra:

    .
    ./directory1

Bạn có thể kết hợp các tùy chọn -name-type để tinh chỉnh tìm kiếm của mình. Ví dụ: để tìm tất cả các tệp thông thường có phần mở rộng .txt trong thư mục hiện tại:

find . -type f -name "*.txt"

Ví dụ về đầu ra:

./file1.txt
./file2.txt
./directory1/file3.txt

Kết hợp find với các lệnh khác để tìm kiếm nâng cao

Trong bước này, bạn sẽ học cách kết hợp lệnh find với các lệnh Linux khác để thực hiện tìm kiếm hệ thống file nâng cao hơn.

  1. Tìm và xóa file:

    Để tìm và xóa các file phù hợp với tiêu chí nhất định, bạn có thể sử dụng lệnh find cùng với lệnh rm.

    find . -type f -name "*.tmp" -delete

    Lệnh này sẽ tìm tất cả các file thông thường (-type f) có đuôi .tmp trong thư mục hiện tại và xóa chúng.

  2. Tìm và thực thi lệnh trên các file phù hợp:

    Bạn có thể sử dụng lệnh find để thực thi một lệnh cụ thể trên các file phù hợp với tiêu chí tìm kiếm của bạn. Tùy chọn -exec cho phép bạn làm điều này.

    find . -type f -name "*.txt" -exec cat {} \;

    Lệnh này sẽ tìm tất cả các file thông thường (file .txt) trong thư mục hiện tại và hiển thị nội dung của chúng bằng lệnh cat.

  3. Tìm và sao chép file:

    Bạn có thể kết hợp find với lệnh cp để sao chép các file phù hợp với tiêu chí tìm kiếm đến một vị trí khác.

    find . -type f -name "*.txt" -exec cp {} ~/backups/ \;

    Lệnh này sẽ tìm tất cả các file .txt trong thư mục hiện tại và sao chép chúng vào thư mục ~/backups/.

  4. Tìm và di chuyển file:

    Tương tự, bạn có thể sử dụng find với lệnh mv để di chuyển các file phù hợp với tiêu chí tìm kiếm đến một vị trí khác.

    find . -type f -name "*.bak" -exec mv {} ~/archive/ \;

    Lệnh này sẽ tìm tất cả các file .bak trong thư mục hiện tại và di chuyển chúng vào thư mục ~/archive/.

Bằng cách kết hợp lệnh find với các lệnh Linux khác, bạn có thể tạo ra các quy trình làm việc tìm kiếm và quản lý hệ thống file mạnh mẽ và linh hoạt.

Kết luận cho linux find command

Vậy là chúng ta đã cùng nhau khám phá những điều thú vị về lệnh `find` trong Linux! Hy vọng rằng, qua bài viết này, bạn đã nắm vững cách sử dụng lệnh `find` để tìm kiếm file một cách hiệu quả. linux find command là một công cụ mạnh mẽ, giúp bạn tiết kiệm thời gian và công sức khi làm việc với hệ thống Linux. Đừng ngần ngại thử nghiệm các tùy chọn khác nhau để hiểu rõ hơn về cách chúng hoạt động. Chắc chắn rằng, bạn sẽ thấy lệnh `find` trở thành một người bạn đồng hành đắc lực trong công việc hàng ngày. Chúc bạn thành công trên con đường chinh phục Linux và khám phá thêm nhiều điều thú vị khác! Hãy nhớ rằng, thực hành là chìa khóa để thành thạo bất kỳ công cụ nào, kể cả lệnh `find` này.

Last Updated : 18/10/2025