Monday, November 18, 2024
Google search engine
HomeLanguagesPython | os.fstat() method

Python | os.fstat() method

OS module in Python provides functions for interacting with the operating system. OS comes under Python’s standard utility modules. This module provides a portable way of using operating system dependent functionality.

os.fstat() method in Python is used to get the status of a file descriptor.
A file descriptor is small integer value that corresponds to a file that has been opened by the current process.
A File descriptor indicates a resource and act as handle to perform various lower level I/O operations like read, write, send etc.
For Example: Standard input is usually file descriptor with value 0, standard output is usually file descriptor with value 1 and standard error is usually file descriptor with value 2.
Further files opened by the current process will get the value 3, 4, 5 an so on.

os.fstat() method is equivalent to os.stat(fd) method.

Syntax: os.fstat(fd)

Parameter:
fd: A file descriptor.

Return Type: This method returns a stat_result object of class os which represents the status of the given file descriptor.
The returned ‘stat_result’ object is a tuple which has following named attributes:

  • st_mode: It represents file type and file mode bits (permissions).
  • st_ino: It represents the inode number on Unix and the file index on Windows platform.
  • st_dev: It represents the identifier of the device on which this file resides.
  • st_nlink: It represents the number of hard links.
  • st_uid: It represents the user identifier of the file owner.
  • st_gid: It represents the group identifier of the file owner.
  • st_size: It represents the size of the file in bytes.
  • st_atime: It represents the time of most recent access. It is expressed in seconds.
  • st_mtime: It represents the time of most recent content modification. It is expressed in seconds.
  • st_ctime: It represents the time of most recent metadata change on Unix and creation time on Windows. It is expressed in seconds.
  • st_atime_ns: It is same as st_atime but the time is expressed in nanoseconds as an integer.
  • st_mtime_ns: It is same as st_mtime but the time is expressed in nanoseconds as an integer.
  • st_ctime_ns: It is same as st_ctime but the time is expressed in nanoseconds as an integer.
  • st_blocks: It represents the number of 512-byte blocks allocated for file.
  • st_rdev: It represents the type of device, if an inode device.
  • st_flags: It represents the user defined flags for file.

Note: Some attributes are platform dependent and are subject to availability.

Code: Use of os.fstat() method to get the status of a file descriptor




# Python program to explain os.fstat() method 
    
# importing os module 
import os
  
# Path
path = "/home / ihritik / Desktop / file1.txt"
  
  
# open the file represented by
# the above given path and get
# the file descriptor associated
# with it using os.open() method
fd = os.open(path, os.O_RDONLY)
  
  
# Get the status of the 
# file descriptor using
# os.fstat() method
status = os.fstat(fd)
  
  
# Print the status of
# the file descriptor 
print(status)
  
  
# close the file descriptor
os.close(fd)


Output:

os.stat_result(st_mode=33188, st_ino=801111, st_dev=2056, st_nlink=1, st_uid=1000,
st_gid=1000, st_size=6550, st_atime=1560377051, st_mtime=1560377051, st_ctime=1560377051)
RELATED ARTICLES

Most Popular

Recent Comments