Just started learning Python. How can i get a status of file's attributes in Python? I know that os.chmod(fullname, stat.S_IWRITE)
delete readonly attribute, but how can i get status without changing it? I need to get all of the attributes of "hidden"
, "system"
, "readonly"
, "archive"
You can use directly the Windows API like that
import win32con
import win32api
attrs = win32api.GetFileAttributes(filepath)
attrs & win32con.FILE_ATTRIBUTE_SYSTEM
attrs & win32con.FILE_ATTRIBUTE_HIDDEN
you need to take a look at module stat
and os.stat
os.stat(path)
Perform the equivalent of a stat() system call on the given path. (This function follows symlinks; to stat a symlink use lstat().)
The return value is an object whose attributes correspond to the members of the stat structure, namely:
st_mode - protection bits,
st_ino - inode number,
st_dev - device,
st_nlink - number of hard links,
st_uid - user id of owner,
st_gid - group id of owner,
st_size - size of file, in bytes,
st_atime - time of most recent access,
st_mtime - time of most recent content modification,
st_ctime - platform dependent; time of most recent metadata change on Unix, or the time of creation on Windows)
If you are using python 3.4+ you can use pathlib stat method.
from pathlib import Path
print(Path(r"D:\temp\test.txt").stat())
Output:
os.stat_result(
st_mode=33206,
st_ino=204632308068721491,
st_dev=67555953,
st_nlink=1,
st_uid=0,
st_gid=0,
st_size=4,
st_atime=1550757968,
st_mtime=1550757968,
st_ctime=1550757951
)
here is more information about os.stat_result
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With