Hướng dẫn os stat python - con trăn bang us

Mã nguồn: lib/stat.py Lib/stat.py

Mô -đun stat xác định các hằng số và chức năng để giải thích kết quả của os.stat(), os.fstat()os.lstat() (nếu chúng tồn tại). Để biết chi tiết đầy đủ về các cuộc gọi stat(), fstat()lstat(), hãy tham khảo tài liệu cho hệ thống của bạn.

Thay đổi trong phiên bản 3.4: Mô -đun Stat được hỗ trợ bởi triển khai C.The stat module is backed by a C implementation.

Mô -đun stat xác định các chức năng sau để kiểm tra cho các loại tệp cụ thể:

________ 9 ________ 10 (Chế độ)(mode)

Trả về không phải nếu chế độ là từ một thư mục.

________ 9 ________ 12 (Chế độ)(mode)

Trả về không phải nếu chế độ từ tệp thiết bị đặc biệt ký tự.

________ 9 ________ 14 (Chế độ)(mode)

Trả về không phải là nếu chế độ từ tệp thiết bị đặc biệt khối.

________ 9 ________ 16 (Chế độ)(mode)

Trả về không phải là nếu chế độ là từ một tệp thông thường.

________ 9 ________ 18 (Chế độ)(mode)

Trả về không phải là một chế độ từ FIFO (đường ống được đặt tên).

________ 9 ________ 20 (Chế độ)(mode)

Trả về không phải nếu chế độ là từ một liên kết tượng trưng.

________ 9 ________ 22 (Chế độ)(mode)

Trả về không phải nếu chế độ từ ổ cắm.

________ 9 ________ 24 (Chế độ)(mode)

Trả về không phải nếu chế độ là từ một cánh cửa.

Mới trong phiên bản 3.4.

________ 9 ________ 26 (Chế độ)(mode)

Trả về không phải nếu chế độ từ cổng sự kiện.

Mới trong phiên bản 3.4.

________ 9 ________ 26 (Chế độ)(mode)

Trả về không phải nếu chế độ từ cổng sự kiện.

Mới trong phiên bản 3.4.

________ 9 ________ 26 (Chế độ)

Trả về không phải nếu chế độ từ cổng sự kiện.(mode)

________ 9 ________ 28 (Chế độ)

Trả về không phải nếu chế độ là từ một cái trắng.(mode)

Hai chức năng bổ sung được xác định để thao tác chung hơn về chế độ tệp:

________ 9 ________ 30 (Chế độ)

Example:

import os, sys from stat import * def walktree(top, callback): '''recursively descend the directory tree rooted at top, calling the callback function for each regular file''' for f in os.listdir(top): pathname = os.path.join(top, f) mode = os.lstat(pathname).st_mode if S_ISDIR(mode): # It's a directory, recurse into it walktree(pathname, callback) elif S_ISREG(mode): # It's a file, call the callback function callback(pathname) else: # Unknown file type, print a message print('Skipping %s' % pathname) def visitfile(file): print('visiting', file) if __name__ == '__main__': walktree(sys.argv[1], visitfile)

Trả về phần của chế độ tệp có thể được đặt bởi ____ ____ 31, nghĩa là các bit quyền của tệp, cộng với bit bit, nhóm-nhóm-id và id-set-id-set-id-set-id-set-id (trên các hệ thống hỗ trợ chúng).

________ 9 ________ 33 (chế độ) ¶(mode)

Trả về phần của chế độ tệp tệp mô tả loại tệp (được sử dụng bởi các hàm os.fstat()4 ở trên).

Thông thường, bạn sẽ sử dụng các chức năng os.fstat()5 để kiểm tra loại tệp; Các chức năng ở đây rất hữu ích khi bạn đang thực hiện nhiều bài kiểm tra của cùng một tệp và muốn tránh chi phí của cuộc gọi hệ thống stat() cho mỗi bài kiểm tra. Chúng cũng hữu ích khi kiểm tra thông tin về một tệp được xử lý bởi os.fstat()7, như các thử nghiệm cho các thiết bị khối và ký tự.

Một chức năng tiện ích bổ sung được cung cấp để chuyển đổi chế độ tệp trong một chuỗi có thể đọc được của con người:

________ 9 ________ 39 (chế độ) ¶

Chuyển đổi chế độ tệp tệp thành một chuỗi của biểu mẫu ‘-rwxrwxrwx.

Mới trong phiên bản 3.3.

Tất cả các biến dưới đây chỉ đơn giản là các chỉ mục tượng trưng cho 10-tuple được trả về bởi os.stat(), os.fstat() hoặc os.lstat().

________ 9 ________ 44¶

Chế độ bảo vệ Inode.

________ 9 ________ 46¶

Số inode.

________ 9 ________ 48¶

Thiết bị Inode nằm trên.

________ 9 ________ 50¶

Số lượng liên kết đến inode.

________ 9 ________ 52¶

ID người dùng của chủ sở hữu.

________ 9 ________ 54¶

ID nhóm của chủ sở hữu.

________ 9 ________ 56¶

Kích thước trong byte của một tập tin đơn giản; Số lượng dữ liệu đang chờ trên một số tập tin đặc biệt.

________ 9 ________ 58¶

Thời gian truy cập cuối cùng.

________ 9 ________ 60¶

Thời gian sửa đổi cuối cùng.

________ 9 ________ 62¶

Các C CTIME như được báo cáo bởi hệ điều hành. Trên một số hệ thống (như UNIX) là thời điểm thay đổi siêu dữ liệu cuối cùng và trên các hệ thống khác (như Windows), là thời gian sáng tạo (xem tài liệu nền tảng để biết chi tiết).

Socket.

Việc giải thích các thay đổi kích thước tệp của người dùng theo loại tệp. Đối với các tệp đơn giản, đây là kích thước của tệp trong byte. Đối với FIFOS và ổ cắm dưới hầu hết các hương vị của UNIX (đặc biệt bao gồm cả Linux), kích thước trên mạng là số lượng byte đang chờ được đọc tại thời điểm gọi đến os.stat(), os.fstat() hoặc os.lstat(); Điều này đôi khi có thể hữu ích, đặc biệt là để bỏ phiếu cho một trong những tệp đặc biệt này sau khi mở không chặn. Ý nghĩa của trường kích thước cho các thiết bị ký tự và khối khác khác nhau nhiều hơn, tùy thuộc vào việc thực hiện cuộc gọi hệ thống cơ bản.

Các biến bên dưới xác định các cờ được sử dụng trong trường fstat()6.

Việc sử dụng các chức năng ở trên là di động hơn so với việc sử dụng bộ cờ đầu tiên:

________ 9 ________ 68¶

________ 9 ________ 70¶

Liên kết tượng trưng.

________ 9 ________ 72¶

Directory.

Tệp thường xuyên.

________ 9 ________ 74¶

Khối thiết bị.

FIFO.

________ 9 ________ 76¶

Door.

Mới trong phiên bản 3.4.

________ 9 ________ 26 (Chế độ)

Trả về không phải nếu chế độ từ cổng sự kiện.

Mới trong phiên bản 3.4.

________ 9 ________ 26 (Chế độ)

Whiteout.

Mới trong phiên bản 3.4.

________ 9 ________ 26 (Chế độ)

Trả về không phải nếu chế độ từ cổng sự kiện.

________ 9 ________ 28 (Chế độ)

Trả về không phải nếu chế độ là từ một cái trắng.

Hai chức năng bổ sung được xác định để thao tác chung hơn về chế độ tệp:

________ 9 ________ 96¶

Dính một chút. Khi bit này được đặt trên một thư mục, điều đó có nghĩa là một tệp trong thư mục đó có thể được đổi tên hoặc xóa bởi chủ sở hữu của tệp, bởi chủ sở hữu của thư mục hoặc bởi một quy trình đặc quyền.

________ 9 ________ 98¶

Mặt nạ cho quyền của chủ sở hữu tập tin.

________ 9 ________ 100¶

Chủ sở hữu đã đọc quyền.

________ 9 ________ 102¶

Chủ sở hữu có quyền viết.

________ 9 ________ 104¶

Chủ sở hữu có quyền thực thi.

________ 9 ________ 106¶

Mặt nạ cho quyền nhóm.

________ 9 ________ 108¶

Nhóm có sự cho phép đọc.

________ 9 ________ 110¶

Nhóm có quyền viết.

________ 9 ________ 112¶

Nhóm có quyền thực thi.

________ 9 ________ 114¶

Mặt nạ cho quyền cho người khác (không phải trong nhóm).

________ 9 ________ 116¶

Những người khác đã đọc sự cho phép.

________ 9 ________ 118¶

Những người khác có quyền viết.

________ 9 ________ 120¶

Những người khác có quyền thực thi.

________ 9 ________ 122¶

Hệ thống v thực thi tập tin. Cờ này được chia sẻ với stat.2: Khóa tệp/bản ghi được thực thi trên các tệp không có BIT thực hiện nhóm (stat.3).

________ 9 ________ 126¶

UNIX V7 Từ đồng nghĩa với stat27.

________ 9 ________ 129¶

Unix v7 đồng nghĩa với stat30.

________ 9 ________ 132¶

Unix v7 đồng nghĩa với stat33.

Các cờ sau đây có thể được sử dụng trong đối số cờ của stat34:

________ 9 ________ 136¶

Không đổ tệp.

________ 9 ________ 138¶

Các tập tin có thể không được thay đổi.

________ 9 ________ 140¶

Các tập tin chỉ có thể được thêm vào.

________ 9 ________ 142¶

Thư mục mờ đục khi nhìn qua một ngăn xếp công đoàn.

________ 9 ________ 144¶

Các tập tin có thể không được đổi tên hoặc xóa.

________ 9 ________ 146¶

Tệp được lưu trữ nén (MacOS 10.6+).

________ 9 ________ 148¶

Tệp không nên được hiển thị trong GUI (MacOS 10,5+).

________ 9 ________ 150¶

Các tập tin có thể được lưu trữ.

________ 9 ________ 152¶

Các tập tin có thể không được thay đổi.

________ 9 ________ 140¶

Các tập tin chỉ có thể được thêm vào.

________ 9 ________ 142¶

Các tập tin có thể không được đổi tên hoặc xóa.

________ 9 ________ 146¶

Tệp được lưu trữ nén (MacOS 10.6+).

________ 9 ________ 148¶

Tệp không nên được hiển thị trong GUI (MacOS 10,5+).

________ 9 ________ 150¶

Các tập tin có thể được lưu trữ.

________ 9 ________ 152¶

________ 9 ________ 154¶

________ 9 ________ 156¶

Chủ đề