Computer >> Máy Tính >  >> Điện thoại thông minh >> Linux

Bắt đầu sử dụng Lệnh ‘find’ trong Linux

Hướng dẫn ngắn gọn nhưng chi tiết này sẽ giúp bạn bắt đầu sử dụng lệnh “find” trong Linux và cung cấp các ví dụ hữu ích trong thế giới thực.

Vì ổ cứng ngày càng trở nên rẻ hơn trong vài năm qua, chúng ta đã quen với việc có nhiều gigabyte hoặc đôi khi thậm chí hàng terabyte dữ liệu trên máy tính của mình. Đây là lúc khả năng tìm kiếm thông tin trên máy tính của chúng ta trở nên quan trọng. Linux có một công cụ dòng lệnh rất tiện dụng được gọi là “tìm kiếm” sẽ giúp bạn thực hiện điều đó. Tôi sẽ chia sẻ với bạn một số tính năng cơ bản của lệnh "find" để giúp bạn bắt đầu. Tôi khá chắc chắn rằng bạn sẽ thấy nó khá hữu ích.

Cú pháp sử dụng “find” được tạo như sau:

# tìm [nơi tìm kiếm] [tiêu chí]

Một ví dụ đơn giản về cách sử dụng của nó là:

# find -name “* .txt”
./Documents/articles/doctor_dolittle.txt
./Documents/articles/Installing_Redhat_Linux.txt
./Desktop/todo_list.txt

Lệnh trên sẽ tìm kiếm trong thư mục hiện tại và tất cả các thư mục con của nó để tìm các tệp có phần mở rộng “txt”. Một điều cần lưu ý ở đây là tất cả các tham số cho find là hoàn toàn tùy chọn. Điều này có nghĩa là ngay cả khi bạn chỉ nhập lệnh “find” và nhấn phím Enter, bạn sẽ nhận được một kết quả - danh sách tất cả những thứ trong thư mục hiện tại và các thư mục con. Hãy dùng thử.

Nếu bạn muốn tìm kiếm nhiều thư mục cho các tệp văn bản, bạn có thể liệt kê các thư mục để tìm kiếm lần lượt:

# find / home / hobbes / / home / calvin / -name “* .txt”
/home/calvin/Documents/articles/doctor_dolittle.txt
/home/calvin/Desktop/todo_list.txt
/home/hobbes/Desktop/articles.txt
/ home /hobbes/data_logging.txt

Bạn có thể gặp một vài lỗi khi chạy một số tìm kiếm. Điều này chủ yếu liên quan đến việc thiếu quyền. Một mẹo hay để làm cho đầu ra sạch hơn rất nhiều là gửi lỗi tới “/ dev / null”:

find / home / hobbes / / home / calvin / -name “* .txt” 2> / dev / null

Một vấn đề khác mà bạn có thể gặp phải là theo mặc định, những tìm kiếm này phân biệt chữ hoa chữ thường. Vì vậy, tìm kiếm "picasso" sẽ không mang lại kết quả "Picasso". Bạn có thể phá vỡ điều đó bằng cách sử dụng tùy chọn “-iname”:

# find / home / calvin / -iname “picasso”
./Documents/images/picasso.png
./Documents/articles/The_artist_Picasso.doc

Có rất nhiều "cách hack" thú vị cho lệnh "find". Ở đây có một ít. Để tìm các tệp đã được sửa đổi trong 45 phút qua, bạn có thể thực hiện tìm kiếm dựa trên thời gian:

# find / home / calvin / -mmin -45
./hello.txt
./artwork.jpg

Tương tự, bạn có thể tìm kiếm các tệp đã được sửa đổi từ 15 đến 25 phút trước:

# find -mmin +15 -mmin -25

Bạn cũng có thể kiểm soát độ sâu mà “find” đi vào khi tìm kiếm các thư mục con. Lệnh sau:

# find / home / calvin / -maxdepth 2 -name “* .txt”

sẽ chỉ chuyển đến hai cấp trên cùng của thư mục được chỉ định và tìm kiếm các tệp có phần mở rộng tệp “txt”. Theo tùy chọn, bạn cũng có thể yêu cầu "tìm" để chỉ tìm kiếm ở hai cấp thấp hơn:

# find / home / calvin / -mindepth 2 -name “* .txt”
./artexpo.txt
./Documents/project.txt

Như với hầu hết các lệnh, bạn có thể nối kết quả đầu ra vào một tệp. Vì vậy, nếu bạn muốn ghi lại một tìm kiếm, bạn có thể làm như sau:

# find / home / calvin / -name “* .txt”> /tmp/search.log

Lệnh “find” có thể cực kỳ hữu ích khi bạn hiểu rõ về nó. Một cuốn sách có thể được viết trên. Những gì tôi đã chia sẻ với bạn ở đây chỉ là trải nghiệm của những khả năng. Hãy xem trang web tìm kiếm để biết các chỉ dẫn đến các tính năng khác của “tìm kiếm”. Hoặc đi xa hơn với "tìm và thay thế".