如何使用Python强制将文件句柄fd写入磁盘?
您必须使用fdatasync(fd)函数来强制将文件句柄fd写入磁盘。它不会强制更新元数据。请注意,这仅适用于Unix系统。
更跨平台的解决方案是使用fsync(fd),它可以强制将文件句柄fd写入磁盘。在Unix上,它调用本地的fsync()函数;在Windows上,它调用MS _commit()函数。
阅读更多:Python 教程
示例
import os, sys
# 打开一个文件
fd = os.open( "foo.txt", os.O_RDWR|os.O_CREAT )
os.write(fd, "This is test")
# 现在您可以使用fsync()方法。
os.fsync(fd)
# 现在从头读取此文件
os.lseek(fd, 0, 0)
str = os.read(fd, 100)
print "Read String is : ", str
os.close( fd )
输出
运行上述程序时,会产生以下结果:
Read String is : This is test
极客教程