📜  Python| os.fstatvfs() 方法

📅  最后修改于: 2022-05-13 01:54:35.955000             🧑  作者: Mango

Python| os.fstatvfs() 方法

Python中的OS 模块提供了与操作系统交互的功能。操作系统属于 Python 的标准实用程序模块。该模块提供了一种使用操作系统相关功能的可移植方式。

Python中的os.fstatvfs()方法用于获取有关包含与给定文件描述符关联的文件的文件系统的信息。为了获取文件系统信息,该方法对与给定文件描述符关联的路径执行statvfs()系统调用。

文件描述符是对应于文件或其他输入/输出资源(例如管道或网络套接字)的小整数值。它是资源的抽象指标,并充当句柄来执行各种较低级别的 I/O 操作,如读、写、发送等。
例如:标准输入通常是值为 0 的文件描述符,标准输出通常是值为 1 的文件描述符,标准错误通常是值为 2 的文件描述符。
当前进程打开的其他文件将获得值 3、4、5 等等。

注意: os.fstatvfs()方法仅在 Unix 平台上可用。

代码:使用 os.fstatvfs() 方法获取有关包含与给定文件描述符关联的文件的文件系统的信息。
# Python program to explain os.fstatvfs() method 
    
# importing os module 
import os
  
# File path 
path = "/home / ihritik / Desktop / file.txt"
  
# open the file and get
# the file descriptor associated
# with it using os.open() method
fd = os.open(path, os.O_WRONLY)
  
  
# get the information about the
# filesystem containing the file
# associated with the given
# file descriptor using os.fstatvfs() method
info = os.fstatvfs(fd)
  
# Print the information
# about the file system
print(info)
  
# Print the file system block size
print("File system block size:", info.f_bsize)
  
# Print the number of free blocks
# in the file system
print("Number of free blocks:", info.f_bfree)
  
# Close the file descriptor
os.close(fd)
输出:
os.statvfs_result(f_bsize=4096, f_frsize=4096, f_blocks=59798433, f_bfree=56521834,
f_bavail=53466807, f_files=15261696, f_ffree=14933520, f_favail=14933520, f_flag=4096,
f_namemax=255)
File system block size: 4096
Number of free blocks: 56517297