Hướng Dẫn Sử Dụng Lệnh Find Trên Linux

Khi sử dụng hệ điều hành Linux đôi khi chúng ta cần tìm một thư mục hoặc một file nào đó, nhưng không biết chúng nằm ở đâu và có thể sẽ mất rất nhiều thời gian để tìm thấy. Thay vào đó chúng ta có thể sử dụng lệnh find trong linux để có thể tìm ra file hoặc thư mục một cách nhanh chóng. 

Tìm file nằm trong thư mục hiện tại

Tìm tất cả các file có tên là vinahost.txt trong thư mục hiện tại đang làm việc

# find . -name vinahost.txt
./vinahost.txt
Tìm tất cả các file nằm trong thư mục / home với tên vinahost.txt

# find /home -name vinahost.txt
/home/vinahost.txt

Tìm tất cả các file có tên là vinahost.txt và tên gồm cả chữ hoa và chữ thường trong thư mục /home

# find /home -iname vinahost.txt
./vinahost.txt
./vinahost.txt

Tìm tất cả thư mục có tên là Vinahost nằm trong thư mục /

# find / -type d -name Vinahost
/Vinahost

Tìm file Vinahost.php nằm trong thư mục đang làm việc

# find . -type f -name Vinahost.php
./Vinahost.php

Tìm tất cả file PHP trong thư mục

Tìm tất cả file có phần mở rộng là php trong thư mục đang làm việc

# find . -type f -name "*.php"

 ./Vinahost.php

./login.php

./index.php

 Tìm file có mã quyền là 777

# find . -type f -perm 0777 -print

Bạn có thể thay đổi 777 sang 775 hoặc một mã bất kì.

 Tìm file có mã quyền khác 777

# find / -type f ! -perm 777

Tìm SGID Files có mã quyền là 644

# find / -perm 2644

Tìm Sticky Bit file có quyền là 551

# find / -perm 1551

Tìm file SUID

# find / -perm /u=s

Tìm file SGID

# find / -perm /g=s

Tìm file đang ở chế độ read only

# find / -perm /u=r

Tìm file có thể thực thi

# find / -perm /a=x

Tìm file có mã quyền 777 và chmod là 644

# find / -type f -perm 0777 -print -exec chmod 644 {} \;

Tìm thư mục có mã quyền 777 và chmod là 644

# find / -type d -perm 777 -print -exec chmod 755 {} \;

Tìm và xóa một file

# find . -type f -name "vinahost.txt" -exec rm -f {} \;

Tìm và xóa nhiều file

# find . -type f -name "*.txt" -exec rm -f {} \;
# find . -type f -name "*.mp3" -exec rm -f {} \;

Tìm file rỗng

# find /tmp -type f -empty

Tìm thư mục rỗng

# find /tmp -type d -empty

Tìm tất cả file ẩn

# find /tmp -type f -name ".*"

Lệnh find Linux: Tìm dựa vào user và group

Sau đây là 4 ví dụ cách sử dụng lệnh find để tìm file và thư mục theo user / group.

 Tìm một file dựa vào user

Để tìm tất cả hoặc một file có tên là vinahost.txt trong thư mục /root của một user ta dùng lệnh sau.

# find / -user root -name vinahost.txt

Tìm tất cả các file dựa vào user

Tìm tất cả các file thuộc sở hữu của user Vinahost nằm trong thư mục /home.

# find /home -user Vinahost

Tìm tất cả các file dựa vào group

Tìm tất cả các file thuộc group Developer trong thư mục /home.

# find /home -group developer

Tìm một file có phần mở rộng thuộc một group

Tìm tất cả file .txt của user Vinahost nằm trong thư mục /home.

# find /home -user Vinahost -iname "*.txt"

Lệnh Find trong Linux: Tìm file dựa vào thời gian tạo

Tìm những file được sửa đổi 50 ngày qua

# find / -mtime 50

Tìm file được truy cập 50 ngày qua

# find / -atime 50

Tìm file được sửa đổi trong khoảng 50 – 100 ngày

# find / -mtime +50 –mtime -100

Tìm các file đã thay đổi trong 1 giờ qua

# find / -cmin -60

Tìm file đã sửa đổi trong 1 giờ qua

# find / -mmin -60

Tìm file đã truy cập trong 1 giờ qua

# find / -amin -60

Lệnh find trong Linux: Tìm file dựa vào kích thước

Tìm file có kích thước 50MB

# find / -size 50M

Tìm file có kích thước trong khoảng 50MB – 100MB

# find / -size +50M -size -100M

Tìm và xóa file có kích thước 100MB

# find / -type f -size +100M -exec rm -f {} \;

 Tìm một file cụ thể và xóa

# find / -type f -name *.mp3 -size +10M -exec rm {} \;

THAM KHẢO CÁC DỊCH VỤ TẠI VINAHOST:

>> SERVERCOLOCATION – CDN

>> CLOUDVPS

>> HOSTING

>> EMAIL

>> WEBSITE

>> TÊN MIỀN

>> SSL

Was this article helpful?