Copyright © tutorialspoint.com

PERL lstat Function


Syntax

lstat FILEHANDLE

lstat EXPR

lstat


Definition and Usage

Performs the same tests as the stat function on FILEHANDLE or the file referred to by EXPR or $_

If the file is a symbolic link, it returns the information for the link, rather than the file it points to. Otherwise, it returns the information for the file.

Return Value

  • In list context it returns a list of 13 elements, these fileds are as follows:

  0 dev      device number of filesystem
  1 ino      inode number
  2 mode     file mode  (type and permissions)
  3 nlink    number of (hard) links to the file
  4 uid      numeric user ID of file's owner
  5 gid      numeric group ID of file's owner
  6 rdev     the device identifier (special files only)
  7 size     total size of file, in bytes
  8 atime    last access time in seconds since the epoch
  9 mtime    last modify time in seconds since the epoch
 10 ctime    inode change time in seconds since the epoch (*)
 11 blksize  preferred block size for file system I/O
 12 blocks   actual number of blocks allocated

NOTE: The epoch was at 00:00 January 1, 1970 GMT.

Example

Try out following example:

#!/usr/bin/perl -w

$filename = "/tmp/test.pl";
($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,
     $atime,$mtime,$ctime,$blksize,$blocks)
           = lstat($filename);
 printf "File is %s,\n size is %s,\n perm %04o, mtime %s\n",
        $filename, $size, $mode & 07777,
        scalar localtime $mtime;

It will produce following results:

File is /tmp/test.pl,
size is  202,
perm 007, mtime Wed Dec 31 17:00:00 1969

Copyright © tutorialspoint.com