Python Glossary Русский

all Python 3Linux · macOSosfunction

os.fstatvfs

os — file system

Like statvfs, but by an open file descriptor. Availability: Unix.

Syntax

os.fstatvfs(...)

It reports on the filesystem of the file that is open — even if its path was renamed or another filesystem was mounted over it since. The fields match statvfs: user-available space is f_bavail * f_frsize. It is unavailable on Windows; shutil.disk_usage is the portable alternative.

Examples

import os
fd = os.open('/', os.O_RDONLY)   # → ? только Unix: дескриптор каталога-точки монтирования
st = os.fstatvfs(fd)   # → ? только Unix: os.statvfs_result — та же структура, что у os.statvfs
print(st.f_bsize)   # → ? только Unix: предпочтительный размер блока ФС в байтах, например 4096
print(st.f_bavail * st.f_frsize // 1024 // 1024)   # → ? только Unix: свободно мегабайт для обычного пользователя, например 15340
print(os.fstatvfs(fd).f_blocks == os.statvfs('/').f_blocks)   # → ? только Unix: True — fstatvfs адресует ФС по дескриптору, statvfs по пути
os.close(fd)   # → ? только Unix: дескриптор освобождён

See also

Common errors

Open in the full glossarydocs.python.orgReport an inaccuracy