Cách tìm kiếm tệp trong dòng lệnh CentOS [đã đóng]


83

Tôi đang sử dụng phiên bản tối thiểu của CentOS và tôi đang cố định vị một tệp, nhưng tôi không biết cách tìm kiếm tệp trên tất cả máy chủ. Tôi chắc chắn có một lệnh ra khỏi đó để làm điều đó, bất cứ ai có thể giúp tôi?


4
Hãy để tôi giới thiệu với bạn findlệnh.
fedorqui 'SO dừng hại'

Câu trả lời:


193

Hãy thử lệnh này:

find / -name file.look

làm việc một điều trị, cổ vũ
Dan

Tham số -name không hoạt động với tôi ....
Crt

46

CentOS là Linux, vì vậy, giống như tất cả các hệ thống Unix / Linux khác, bạn có findlệnh. Để tìm kiếm các tệp trong thư mục hiện tại:

find -name "filename"

Bạn cũng có thể có các ký tự đại diện bên trong dấu ngoặc kép chứ không chỉ có một tên tệp nghiêm ngặt. Bạn cũng có thể chỉ định rõ ràng một thư mục để bắt đầu tìm kiếm từ đó làm đối số đầu tiên để tìm:

find / -name "filename"

sẽ tìm kiếm "tên tệp" hoặc tất cả các tệp phù hợp với biểu thức regex ở giữa các dấu ngoặc kép, bắt đầu từ thư mục gốc. Bạn cũng có thể sử dụng dấu ngoặc kép thay vì dấu ngoặc kép, nhưng trong hầu hết các trường hợp, bạn không cần một trong hai dấu ngoặc kép, vì vậy các lệnh trên sẽ hoạt động mà không cần bất kỳ dấu ngoặc kép nào. Ngoài ra, ví dụ: nếu bạn đang tìm kiếm tệp java và bạn biết chúng ở đâu đó trong / home / tên người dùng của bạn, hãy làm:

find /home/username -name *.java

Có nhiều tùy chọn khác cho lệnh tìm và bạn nên thực hiện:

man find

để tìm hiểu thêm về nó.

Một điều nữa: nếu bạn bắt đầu tìm kiếm từ / và không phải root hoặc không chạy lệnh này, bạn có thể nhận được cảnh báo rằng bạn không có quyền đọc một số thư mục nhất định. Để bỏ qua / xóa chúng, hãy làm:

find / -name 'filename' 2>/dev/null

Điều đó chỉ chuyển hướng stderr đến / dev / null.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.