Python os.fstat() 方法



Python 的fstat()方法返回有关与文件描述符关联的文件的信息。文件描述符是当前由进程打开的文件的唯一标识符。以下是 fstat 方法返回的信息:

  • st_dev - 包含文件的设备ID

  • st_ino - inode 号码

  • st_mode - 保护模式

  • st_nlink - 硬链接数

  • st_uid - 所有者的用户ID

  • st_gid - 所有者的组ID

  • st_rdev - 设备ID(如果为特殊文件)

  • st_size - 总大小(以字节为单位)

  • st_blksize - 文件系统I/O的块大小

  • st_blocks - 已分配的块数

  • st_atime - 最后访问时间

  • st_mtime - 最后修改时间

  • st_ctime - 最后状态更改时间

os.fstat() 方法的工作方式类似于 "os.stat()" 方法,但在您拥有文件描述符而不是文件路径时使用。

语法

fstat() 方法的语法如下:

os.fstat(fd)

参数

Python 的os.fstat()方法接受单个参数:

  • fd - 这是要返回系统信息的文件夹描述符。

返回值

Python 的os.fstat()方法返回有关与文件描述符关联的文件的信息。

示例

以下示例显示了 fstat() 方法的用法。结果将包含一个包含有关文件信息的 "stat_result" 对象。

#!/usr/bin/python
import os, sys

# Open a file
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )

# Now get the touple
info = os.fstat(fd)
print ("Printing the Info of File :", info)

# Close opened file
os.close( fd)

运行以上程序时,会产生以下结果:

Printing the Info of File : os.stat_result(st_mode=33277, st_ino=1054984, st_dev=2051, st_nlink=1, st_uid=1000, st_gid=1000, st_size=0, st_atime=1713157516, st_mtime=1713157516, st_ctime=1713157517)

示例

在下面的示例中,我们使用 fstat() 方法显示给定文件的 UID 和 GID。

#!/usr/bin/python
import os, sys

# Open a file
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )
info = os.fstat(fd)

# Now get uid of the file
print ("UID of the file :%d" % info.st_uid)

# Now get gid of the file
print ("GID of the file :%d" % info.st_gid)

# Close opened file
os.close( fd)
print("File closed successfully!!")

运行上述程序后,将显示以下结果:

UID of the file :1000
GID of the file :1000
File closed successfully!!
python_files_io.htm
广告