跳转至

stat命令

欢迎阅读《每天一个Linux命令》系列!在本篇文章中,将说明stat命令的编写示例,包含概念、命令操作以及命令详细解释。

一、简介

stat命令是Linux系统下的文件状态查看命令,用于显示文件或目录的状态信息。

  • 英文原意:display file or file system status
  • 所在路径:/usr/bin/stat
  • 执行权限:所有用户

通过命令which可以查看到stat命令的路径:

Bash
[root@chatgpt-test tmp]# which stat
/usr/bin/stat

二、语法

Bash
stat  [选项] 文件或目录

三、选项

选项 说明
-c 以指定的格式显示文件状态信息。
-f 显示文件的文件格式。
-L 显示符号链接的目标文件。
-t 设置以简洁方式显示。

四、示例

例1:显示文件的状态信息

Bash
stat /etc/passwd

输出:

Bash
  文件:"/etc/passwd"
  大小:1296            块:8          IO 块:4096   普通文件
设备:fd00h/64768d      Inode:17392117    硬链接:1
权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
环境:system_u:object_r:passwd_file_t:s0
最近访问:2023-12-01 14:03:23.221777756 +0800
最近更改:2023-11-20 09:32:44.228528334 +0800
最近改动:2023-11-20 09:32:44.523511270 +0800
创建时间:-

例2:显示符号链接的目标文件

Bash
touch stat_file1.txt
echo "Hello world" >stat_file1.txt
ln -s stat_file1.txt file2.txt

显示符号连接的目标文件:

Bash
stat -L file2.txt

输出:

Bash
  文件:"file2.txt"
  大小:12              块:8          IO 块:4096   普通文件
设备:fd00h/64768d      Inode:17827834    硬链接:1
权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
环境:unconfined_u:object_r:user_tmp_t:s0
最近访问:2023-12-01 14:31:43.722569883 +0800
最近更改:2023-12-01 14:32:04.989662027 +0800
最近改动:2023-12-01 14:32:04.989662027 +0800
创建时间:-

例3:显示源文件信息

Bash
stat file2.txt 

输出:

Bash
  文件:"file2.txt" -> "stat_file1.txt"
  大小:14              块:0          IO 块:4096   符号链接
设备:fd00h/64768d      Inode:17827839    硬链接:1
权限:(0777/lrwxrwxrwx)  Uid:(    0/    root)   Gid:(    0/    root)
环境:unconfined_u:object_r:user_tmp_t:s0
最近访问:2023-12-01 14:33:02.252550639 +0800
最近更改:2023-12-01 14:33:00.989502230 +0800
最近改动:2023-12-01 14:33:00.989502230 +0800
创建时间:-

五、注意事项

  • stat命令只能显示文件或目录的状态信息,不能显示文件或目录的内容。
  • stat命令的输出格式可以根据需要进行调整。

六、小结

stat命令是Linux系统下查看文件或目录状态信息的重要命令。在使用stat命令时,请注意以下几点:

  • 文件或目录必须存在。
  • 文件或目录必须具有可读权限。