Linux Command - stat
The Linux stat command will show stats and info for a file or filesystem.
Check a file with stat:
stat test.txt
Dereference a link with “-L” and show the info for the dest file:
stat link.txt
stat -L link.txt
Show filesystem info:
stat -f test.txt
Terse format:
stat -t test.txt
Specify format:
stat -c "name: %n inode: %i type: %F" test.txt
Specify format with escape chars:
stat --printf "name: %n\n\tinode: %i\n\ttype: %F\n" test.txt
Filename and filesystem blocksize ( for faster transfers ):
stat -f -c "%n - %s" test.txt
| -L | dereference, follow links |
| -f | show file system status |
| -t | terse format |
| -c “xxxx” | specify format: |
| –printf “xxxx” | Specify format and use escape characters: |
Formatting for files:
| %a | permission bits in octal (note ‘#’ and ‘0’ printf flags) |
| %A | permission bits and file type in human readable form |
| %b | number of blocks allocated (see %B) |
| %B | the size in bytes of each block reported by %b |
| %C | SELinux security context string |
| %d | device number in decimal (st_dev) |
| %D | device number in hex (st_dev) |
| %Hd | major device number in decimal |
| %Ld | minor device number in decimal |
| %f | raw mode in hex |
| %F | file type |
| %g | group ID of owner |
| %G | group name of owner |
| %h | number of hard links |
| %i | inode number |
| %m | mount point |
| %n | file name |
| %N | quoted file name with dereference if symbolic link |
| %o | optimal I/O transfer size hint |
| %s | total size, in bytes |
| %r | device type in decimal (st_rdev) |
| %R | device type in hex (st_rdev) |
| %Hr | major device type in decimal, for character/block device special files |
| %Lr | minor device type in decimal, for character/block device special files |
| %t | major device type in hex, for character/block device special files |
| %T | minor device type in hex, for character/block device special files |
| %u | user ID of owner |
| %U | user name of owner |
| %w | time of file birth, human-readable; - if unknown |
| %W | time of file birth, seconds since Epoch; 0 if unknown |
| %x | time of last access, human-readable |
| %X | time of last access, seconds since Epoch |
| %y | time of last data modification, human-readable |
| %Y | time of last data modification, seconds since Epoch |
| %z | time of last status change, human-readable |
| %Z | time of last status change, seconds since Epoch |
Formatting 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 |
| %i | file system ID in hex |
| %l | maximum length of filenames |
| %n | file name |
| %s | block size (for faster transfers) |
| %S | fundamental block size (for block counts) |
| %t | file system type in hex |
| %T | file system type in human readable form |