Python3 os.fstat() 方法

概述

os.fstat() 方法用于返回文件描述符fd的状态,类似 stat()。

Unix,Windows上可用。

fstat 方法返回的结构:

  • st_dev: 设备信息

  • st_ino: 文件的i-node值

  • st_mode: 文件信息的掩码,包含了文件的权限信息,文件的类型信息(是普通文件还是管道文件,或者是其他的文件类型)

  • st_nlink: 硬连接数

  • st_uid: 用户ID

  • st_gid: 用户组 ID

  • st_rdev: 设备 ID (如果指定文件)

  • st_size: 文件大小,以byte为单位

  • st_blksize: 系统 I/O 块大小

  • st_blocks: 文件的是由多少个 512 byte 的块构成的

  • st_atime: 文件最近的访问时间

  • st_mtime: 文件最近的修改时间

  • st_ctime: 文件状态信息的修改时间(不是文件内容的修改时间)

语法

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

  1. os.fstat(fd)

参数

  • fd — 文件的描述符。

返回值

返回文件描述符fd的状态。

实例

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

  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.fstat(fd)
  10.  
  11. print ("文件信息 :", info)
  12.  
  13. # 获取文件 uid
  14. print ("文件 UID :%d" % info.st_uid)
  15.  
  16. # 获取文件 gid
  17. print ("文件 GID :%d" % info.st_gid)
  18.  
  19. # 关闭文件
  20. os.close( fd)

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

  1. 文件信息 : (33261, 3753776L, 103L, 1, 0, 0,
  2. 102L, 1238783197, 1238786767, 1238786767)
  3. 文件 UID :0
  4. 文件 GID :0