Next: , Previous: LShift Intrinsic, Up: Table of Intrinsic Functions


8.11.9.175 LStat Intrinsic (subroutine)

     CALL LStat(File, SArray, Status)

File: CHARACTER; scalar; INTENT(IN).

SArray: INTEGER(KIND=1); DIMENSION(13); INTENT(OUT).

Status: INTEGER(KIND=1); OPTIONAL; scalar; INTENT(OUT).

Intrinsic groups: unix.

Description:

Obtains data about the given file File and places them in the array SArray. A null character (`CHAR(0)') marks the end of the name in File—otherwise, trailing blanks in File are ignored. If File is a symbolic link it returns data on the link itself, so the routine is available only on systems that support symbolic links. The values in this array are extracted from the stat structure as returned by fstat(2) q.v., as follows:

  1. Device ID
  2. Inode number
  3. File mode
  4. Number of links
  5. Owner's uid
  6. Owner's gid
  7. ID of device containing directory entry for file (0 if not available)
  8. File size (bytes)
  9. Last access time
  10. Last modification time
  11. Last file status change time
  12. Preferred I/O block size (-1 if not available)
  13. Number of blocks allocated (-1 if not available)

Not all these elements are relevant on all systems. If an element is not relevant, it is returned as 0.

If the Status argument is supplied, it contains 0 on success or a nonzero error code upon return (ENOSYS if the system does not provide lstat(2)).

Some non-GNU implementations of Fortran provide this intrinsic as only a function, not as a subroutine, or do not support the (optional) Status argument.

For information on other intrinsics with the same name: See LStat Intrinsic (function).