Về cơ bản, chúng ta sẽ sử dụng cấu trúc chung như sau:
$ find [bắt đầu từ đâu] [biểu thức thực hiện việc cần làm] [-tùy chọn] [thứ tìm kiếm]
Trong đó, [-tùy chọn] sẽ bao gồm một số ý cơ bản như sau và bạn có thể tìm thêm trên các diễn đàn:
Với đặc trưng là giao diện dòng lệnh, Linux thực sự là một công cụ rất mạnh mẽ và linh hoạt trong việc tìm kiếm nhờ sự trợ giúp của grep, awk, Find và located. Nhờ những công cụ này mà bạn sẽ dễ dàng hơn trong việc tìm kiếm các tập tin, tìm kiếm văn bản trong file hoặc thay thế một từ nào đó. Trong khuôn khổ bài viết này, chúng ta sẽ tìm hiểu kỹ về cách sử dụng lệnh Find nhé!
Để dễ dàng đọc hiểu hơn, chúng ta sẽ “quy định riêng” cách viết trong khuôn khổ bài viết này như sau nhé!
1. Tìm kiếm file theo tên file đầy đủ
# find . blogkdata.txt
Kết quả:
./blogkdata.txtLệnh trên sẽ tìm file có tên là blogkdata.txt ( dấu . đại diện cho thư mục hiện hành).
2. Tìm kiếm file theo tên không đầy đủ.
# find / -name blogkdata*
Kết quả:
/home/bloglkdata1.php
/var/blogkdataabc.rar
Lệnh trên sẽ tìm trên toàn bộ hệ thống file có tên bắt đầu bằng “blogkdata”
3. Tìm kiếm file với phần mở rộng.
# find /home -name *.php
Kết quả:
/home/blogkdata.php
/home/admin/login.php
Lệnh trên sẽ tìm trong thư mục /home những file có tên bất kỳ, miễn nó có phần mở rộng là .php
4. Tìm kiếm file ẩn
# find / -type f -name ".*"
5. Tìm kiếm file thuộc sở hữu của blogkdata
# find /home -user blogkdata
Lệnh trên sẽ tìm kiếm tất cả những file trong thư mục home có chủ sở hữu là blogkdata
6. Tìm kiếm file có group là blogkdata
# find /home -group blogkdata
Lệnh trên sẽ tìm kiếm tất cả những file trong thư mục home có group là blogkdata
7. Tìm kiếm file được phân quyền 777
# find . -type f -perm 777
8. Tìm file chỉ có quyền read
# find / -perm /u=r
9. Tìm kiếm file rỗng
# find /tmp -type f -empty
10. Tìm kiếm file được chỉnh sửa trong vòng 50 ngày
# find / -mtime 50
11. Tìm kiếm file được chỉnh sửa trong vòng 50 - 100 ngày
# find / -mtime +50 –mtime -100
12. Tìm kiếm file vừa được tạo ra trong vòng 1 giờ
# find / -cmin -60
13. Tìm kiếm file có dung lượng 50M
# find / -size 50M
14. Tìm kiếm file có dung lượng lớn hơn 50M nhỏ hơn 100M
# find / -size +50M -size -100M
15. Tìm thư mục có tên blogkdata
# find / -type d -name blogkdata
16. Tìm kiếm trên nhiều thư mục
# find /opt /usr /var -name blogkdata.txt -type f
Lệnh trên sẽ tìm kiếm trên các thư mục /opt /usr /var tập tin blogkdata.txt
17. Tìm và xóa file có dung lượng trên 100M
# find / -size +100M -exec rm -rf {} \;
18. Tìm và chmod 644 file có phần mở rộng là .html
# find /usr/local -name "*.html" -type f -exec chmod 644 {} \;
19. Tìm file có phần mở rộng là .mp3 và copy file đó đến thư mục /tmp/MusicFiles
# find . -type f -name "*.mp3" -exec cp {} /tmp/MusicFiles \;
20. Tìm file có chứa nội dung blogkdata
# find /home -type f -exec grep -l ‘blogkdata’{} \;
Chúc bạn sử dụng thành thạo lệnh find trong Linux!
Tips: Tham gia Channel Telegram KDATA để không bỏ sót khuyến mãi hot nào