日期:2014-05-16  浏览次数:20791 次

Linux下使用stat查看文件属性

Linux 下 通过 stat 命令获取文件的属性,例如大小,最后的修改时间等等.

?

stat的属性使用方法 可以通过

"stat --help" 获取如下内容:

?

Usage: stat [OPTION] FILE...
Display file or filesystem status.

  -f, --filesystem      display filesystem status instead of file status
  -c  --format=FORMAT   use the specified FORMAT instead of the default
  -L, --dereference     follow links
  -Z, --context         print the security context information if available
  -t, --terse           print the information in terse form
      --help     display this help and exit
      --version  output version information and exit

The valid format sequences for files (without --filesystem):

  %A   Access rights in human readable form
  %a   Access rights in octal
  %B   The size in bytes of each block reported by `%b'
  %b   Number of blocks allocated (see %B)
  %D   Device number in hex
  %d   Device number in decimal
  %F   File type
  %f   Raw mode in hex
  %G   Group name of owner
  %g   Group ID of owner
  %h   Number of hard links
  %i   Inode number
  %N   Quoted File name with dereference if symbolic link
  %n   File name
  %o   IO block size
  %s   Total size, in bytes
  %T   Minor device type in hex
  %t   Major device type in hex
  %U   User name of owner
  %u   User ID of owner
  %X   Time of last access as seconds since Epoch
  %x   Time of last access
  %Y   Time of last modification as seconds since Epoch
  %y   Time of last modification
  %Z   Time of last change as seconds since Epoch
  %z   Time of last change

Valid format sequences for file systems:

  %a   Free blocks available to non-superuser
  %b   Total data blocks in file system
  %c   Total file nodes in file system
  %d   Free file nodes in file system
  %f   Free blocks in file system
  %C - Security context in SELinux
  %i   File System id in hex
  %l   Maximum length of filenames
  %n   File name
  %s   Optimal transfer block size
  %T   Type in human readable form
  %t   Type in hex

?

使用方式如下:

1. 不带参数?? stat /path/to/myfile.ext? 输出如下:

  File: `myfile.ext'
  Size: 1044611         Blocks: 2056       IO Block: 32768  regular file
Device: xxx/xxx Inode: 1543149     Links: 1
Access: (0664/-rw-rw-r--)  Uid: (3005410/  xxxxx)   Gid: (10001013/xxxxxx)
Access: 2011-08-16 03:01:05.393004000 -0400
Modify: 2011-08-16 04:09:30.714166000 -0400
Change: 2011-08-16 04:09:30.714166000 -0400
?

2. 带参数?? stat -c'%Z| %s' myfile.ext ? 输出如下:

1313486175|1118056

?

??? 以上使用了'format'参数,此处使用了

?

  %Z   Time of last change as seconds since Epoch

??? 与

 %s   Total size, in bytes

??? 注意,如果使用多个格式标签,需要使用引号将其包裹起来,此处的 | 是自行添加的,可以自行添加\t \n 等等格式字符.

?

?

?