Python3 os.fstatvfs() 方法

概述

os.fstatvfs() 方法用于返回包含文件描述符fd的文件的文件系统的信息,类似 statvfs()。

Unix上可用。

fstatvfs 方法返回的结构:

  • f_bsize: 文件系统块大小

  • f_frsize: 分栈大小

  • f_blocks: 文件系统数据块总数

  • f_bfree: 可用块数

  • f_bavail:非超级用户可获取的块数

  • f_files: 文件结点总数

  • f_ffree: 可用文件结点数

  • f_favail: 非超级用户的可用文件结点数

  • f_fsid: 文件系统标识 ID

  • f_flag: 挂载标记

  • f_namemax: 最大文件长度

语法

fstatvfs()方法语法格式如下:

  1. os.fstatvfs(fd)

参数

  • fd — 文件的描述符。

返回值

返回包含文件描述符fd的文件的文件系统的信息。

实例

以下实例演示了 fstatvfs() 方法的使用:

  1. #!/usr/bin/python3
  2.  
  3. import os, sys
  4.  
  5. # 打开文件
  6. fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )
  7.  
  8. # 获取元组
  9. info = os.fstatvfs(fd)
  10.  
  11. print ("文件信息 :", info)
  12.  
  13. # 获取文件名最大长度
  14. print ("文件名最大长度 :%d" % info.f_namemax)
  15.  
  16. # 获取可用块数
  17. print ("可用块数 :%d" % info.f_bfree)
  18.  
  19. # 关闭文件
  20. os.close( fd)

执行以上程序输出结果为:

  1. 文件信息 : (4096, 4096, 2621440L, 1113266L, 1113266L,
  2. 8929602L, 8764252L, 8764252L, 0, 255)
  3. 文件名最大长度 :255
  4. 可用块数 :1113266