How do I get a file's last modified time in Perl?

后端 未结 9 888
说谎
说谎 2020-12-13 03:36

Suppose I have a filehandle $fh. I can check its existence with -e $fh or its file size with -s $fh or a slew of additional informati

9条回答
  •  南方客
    南方客 (楼主)
    2020-12-13 03:54

    my @array = stat($filehandle);
    

    The modification time is stored in Unix format in $array[9].

    Or explicitly:

    my ($dev, $ino, $mode, $nlink, $uid, $gid, $rdev, $size,
        $atime, $mtime, $ctime, $blksize, $blocks) = stat($filepath);
    
      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
    

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

    More information is in stat.

提交回复
热议问题