Find
1.Tìm theo tên
find -name "file_name" (tên chính xác)
find -iname "file_name" (cả tên in hoa)
find -not -name "file_name_to_avoid"
find \! -name "file_name_to_avoid"
find -name test* (tên có chứa chuỗi)
2.Tìm theo thể loại
Sử dụng option -type
- f: regular file
- d: directory
- l: symbolic link
- c: character devices
- b: block devices
find -type f -name “*.ovpn”
3.Tìm theo size
Sử dụng option -size
: c (bytes), k (kilobytes), M (megabytes), G (gigabytes), b (512-byte blocks)
find / -size 50c (file nặng 50 bytes)
find / -size -50c (file nhỏ hơn 50 bytes)
find / -size +1G (file nặng hơn 1G)
4.Tìm theo time
Linux lưu trữ 1 vài thông tin liên quan đến thời gian như: thời điểm truy cập, thời điểm chỉnh sửa, và thời điểm thay đổi file.
- Access Time (thời điểm truy cập): Lần cuối cùng file được đọc hoặc ghi vào.
- Modification Time (thời điểm chỉnh sửa): Lần cuối nội dung file được chỉnh sửa.
- Change Time (thời điểm thay đổi): Lần cuối mà inode meta-data của file bị sửa.
Tương đương với các thông tin trên, ta dùng -atime
, -mtime
, -ctime
, và cả “-“ và “+” để lọc ra những thời gian trước hay sau thời điểm đó.
Để tìm các file được chỉnh sửa trong vòng 1 ngày trước:
find / -mtime 1
Tìm các file được truy cập trong ngày hôm qua:
find / -atime -1
Các file mà meta-data bị chỉnh sửa lần cuối là 3 ngày trước và hơn:
find / -ctime +3
Hoặc tìm file được chỉnh sửa trong vòng 1 phút trước.
find / -mmin -1
Lệnh find còn có thể so sánh với 1 file, và trả về những file mới hơn:
find / -newer myfile
5.Tìm theo Owner và Permission
Chúng ta có thể tìm theo user hay group owner bằng -user
và -group
.
find / -user syslog
find / -group sudo
Tìm những file có permission 644:
find / -perm 644
- 4 is read
- 5 is read/execute (execute is always needed for directories)
- 6 is read/write
- 7 is read, write, and execute
6. Kết hợp find với command khác
Chúng ta còn có thể kết hợp find và các command khác để xử lý những file vừa tìm được với -exec
find find_parameters -exec command_and_params {} \;
Tìm các file có permission là 744 và chmod sang 755:
find / -type f -perm 777 -print -exec chmod 755 {} \;
Tìm 1 file test.py và xóa nó:
find . -type f -name "test.py" -exec rm -f {} \;
Xóa các file có đuôi .mp3 ở dir hiện tại:
find . -type f -name "*.mp3" -exec rm -f {} \;
Tìm các file .mp3 ở thư mục gốc i, không tìm thư mục con của i và move sang thư mục Music
find /i -maxdepth 1 -name '*.mp3' -exec mv -t /i/Music/ {} +
7. Option khác
-empty
để tìm các file/dir rỗng
Back
Back