Cách tìm kiếm tệp với sự cho phép cụ thể


8

Làm cách nào tôi có thể tìm kiếm các tệp có sự cho phép cụ thể. Ví dụ: tôi có 10000 tệp và tôi muốn tìm những tệp có cờ CHỈ ĐỌC. Trong một trường hợp khác, tôi muốn tìm kiếm một người khác có chủ sở hữu cụ thể. Hoặc trong một cái khác để xem các tệp CHỈ ĐỌC và THỰC HIỆN.

Câu trả lời:


9

Có lẽ dễ sử dụng findlệnh nhất, cho phép bạn tìm kiếm đệ quy thông qua cây thư mục. Ví dụ: nếu bạn đặc biệt muốn tìm các tệp chỉ đọc, bạn có thể nhập

find <specify location> -type f -perm -444

Đối với các tệp thuộc về một người dùng cụ thể, bạn có thể sử dụng

find <location> -type f -user mike

Đối với các tệp thi hành (cho tất cả) bạn có thể sử dụng

find <location> -type f -perm -777

Đối với những người có thể thực thi và chỉ đọc cho tất cả, bạn sẽ sử dụng 555 thay cho 777 trong ví dụ trên. Bạn cũng có thể tìm kiếm cho các tập tin mà thuộc về một nhóm bằng cách thay thế -user mikecho -group mike.

Để phủ định các cụm từ tìm kiếm và để tìm kiếm ngược lại chính xác, bạn có thể sử dụng dấu chấm than như thế này:

find <location> -type f ! -perm -444 

Lưu ý: Chỉ định dấu gạch ngang trước các quyền (ví dụ -perm -444) có nghĩa là tất cả các tệp có cờ chỉ đọc sẽ được tìm thấy và không chỉ các tệp là 444; để tìm kiếm chính xác và chỉ có điều đó, chỉ cần xóa dấu gạch ngang (ví dụ -perm 444).

Lưu ý2: Có thể tìm kiếm kết hợp các quyền cũng như sử dụng -acho và -ocho hoặc; ví dụ để tìm chính xác các quyền này, gõ:

find <location> -type f -perm 744 -o -perm 666

Thư mục có thể được tìm kiếm với -type d.

Xem man findcho các hoán vị có sẵn khác.


+1 để đề cập về sự khác biệt giữa -444444
Fr0zenFyr

Đối với tôi, -perm -444tìm các tệp có readquyền, không phải các tệp chỉ đọc (nghĩa là chỉ có read và không có quyền khác).
Jāni Elmeris
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.