Có cách nào tôi có thể liệt kê các tệp bằng cách nhập một lệnh trong trình bao liệt kê tất cả các tên tệp, tên thư mục và quyền của chúng trong CentOS không?
Có cách nào tôi có thể liệt kê các tệp bằng cách nhập một lệnh trong trình bao liệt kê tất cả các tên tệp, tên thư mục và quyền của chúng trong CentOS không?
Câu trả lời:
ls -lR
liệt kê nội dung của các thư mục đệ quy. Đầu ra khó xử lý tự động, nhưng để duyệt thủ công thì có thể tốt vì đó là những gì bạn quen thuộc.
Các find
danh sách lệnh tập tin đệ qui. Bạn có thể tùy chỉnh đầu ra của nó, ví dụ lệnh sau sẽ in các quyền như ls -l
trước mỗi tên tệp:
find -printf '%M %p\n'
Đầu ra này có thể được xử lý một cách cơ học nếu không có dòng mới trong tên tệp của bạn. Nếu bạn thay thế \n
(dòng mới) bằng \000
(byte null), bạn có thể xử lý đầu ra bằng các công cụ hỗ trợ các bản ghi được phân tách bằng null.
Cả hai ls
và find
chỉ in quyền unix truyền thống, không truy cập danh sách kiểm soát. Để có danh sách đệ quy tất cả các quyền của tệp bao gồm thông tin ACL, hãy chạy
getfacl -R .
Đầu ra có thể được xử lý một cách cơ học (các ký tự đặc biệt được sắp xếp); đặc biệt, nó có thể được cung cấp setfacl --restore
để sao chép các quyền sang cây khác có cùng tên tệp.
Bạn muốn find
cho điều này.
find some/dir -ls > output.txt