Tôi có một kho lưu trữ, được lưu trữ bởi người khác và tôi muốn tự động, sau khi tôi tải xuống, để thay đổi một nhánh của hệ thống tệp trong các tệp được trích xuất để có quyền truy cập đọc. (Tôi không thể thay đổi cách tạo tệp lưu trữ).
Tôi đã xem xét chủ đề này: chmod: Cách thêm đệ quy quyền thực thi chỉ vào các tệp đã có quyền thực thi như đối với một số người khác, nhưng không có niềm vui.
Các thư mục ban đầu đi kèm với nhiều nhưng tất cả các cờ sai, chúng có thể xuất hiện dưới dạng:
drwx------
d---r-x---
drwxrwxr-x
dr--r-xr--
Đó chỉ là số ít tôi đã phát hiện ra cho đến nay, nhưng có thể nhiều hơn nữa.
find
lỗi khi cố gắng nhìn vào một thư mục không có sự x
cho phép, và do đó không chuyển nó đến chmod
. Những gì tôi đã làm cho đến nay, là thay đổi thủ công các quyền trên thư mục mẹ, sau đó đi vào các thư mục con và làm tương tự cho chúng và cứ thế. Nhưng đây là rất nhiều lao động tay. Không có cách nào để làm điều này tự động?
Tức là làm thế nào tôi đang làm điều đó bây giờ:
làm:
$ chmod -R +x
$ chmod -R +r
cho đến khi tôi không có lỗi
$ find -type f -exec chmod -x {} +
Nhưng phải có một cách tốt hơn.