Python 3.3+Linuxosfunction
os.getxattr
os — extended attributes (xattr)
Return the value of a file's extended attribute by name.
Syntax
os.getxattr(...)
The attribute name must include a namespace: ordinary users have 'user.', e.g. 'user.comment'; a name without a prefix raises OSError. The value comes back as bytes. Not every filesystem supports attributes, and copying with cp or archiving may lose them.
Examples
import os
os.setxattr('note.txt', 'user.author', b'ivan') # → ? только Linux: записать расширенный атрибут (файл должен существовать, а ФС — поддерживать xattr)
print(os.getxattr('note.txt', 'user.author')) # → b'ivan' — значение всегда возвращается как bytes, не как str
print(os.getxattr('note.txt', 'user.author', follow_symlinks=False)) # → ? только Linux: b'ivan'; для симлинка атрибут читался бы у самой ссылки, а не у её цели
print(os.listxattr('note.txt')) # → ['user.author'] — так узнают, какие атрибуты вообще есть у файла
print(os.getxattr('note.txt', 'user.nope')) # → OSError (Errno 61, ENODATA) — у отсутствующего атрибута нет значения по умолчанию
See also
Common errors
Open in the full glossarydocs.python.orgReport an inaccuracy