00. 目录
01. 命令概述
stat命令用来显示文件或文件系统的详细信息
02. 命令格式
stat [选项]... 文件...
- 1
03. 常用选项
显示文件或文件系统的状态。
-L, --dereference 跟随链接
-f, --file-system 显示文件系统状态而非文件状态
-c --format=格式 使用指定输出格式代替默认值,每用一次指定格式换一新行
--printf=格式 类似 --format,但是会解释反斜杠转义符,不使用换行作
输出结尾。如果您仍希望使用换行,可以在格式中
加入"\n"
-t, --terse 使用简洁格式输出
--help 显示此帮助信息并退出
--version 显示版本信息并退出
有效的文件格式序列(不使用 --file-system):
%a 八进制权限
%A 用可读性较好的方式输出权限
%b 计算已分配块数(参见%B)
%B 以字节为单位输出%b 所报告的每个块的大小
%C SELinux 安全环境字符串
%d 十进制设备编号
%D 十六进制设备编号
%f 十六进制原始模式
%F 文件类型
%g 文件的属组ID
%G 文件的属组组名
%h 硬链接数量
%i Inode 编号
%m 挂载点
%n 文件名
%N 如果对象是一个符号链接,显示引用到的其它文件名
%o I/O 块大小
%s 总计大小,以字节为单位
%t 十六进制主设备类型
%T 十六进制子设备类型
%u 文件的属主ID
%U 文件的属主用户名
%w 文件创建时间,若未知则显示"-"
%W 从UNIX 元年起以秒计的文件创建时间,若未知则显示"-"
%x 上次访问时间
%X 从UNIX 元年起以秒计的上次访问时间
%y 上次修改时间
%Y 从UNIX 元年起以秒计的上次修改时间
%z 上次更改时间
%Z 从UNIX 元年起以秒计的上次更改时间
有效的文件系统格式序列:
%a 非超级用户可用的剩余块数
%b 文件系统的总数据块数
%c 文件系统中文件节点总数
%d 文件系统中空闲文件节点数
%f 文件系统中空闲块数
%i 十六进制文件系统ID
%I 允许的文件名最大长度
%n 文件名
%s 块大小(用于快速传输)
%S 基本块大小(用于块计数)
%t 十六进制类型描述
%T 可读性较好的类型描述
注意:您的shell 内含自己的stat 程序版本,它会覆盖这里所提及的相应
版本。请查阅您的shell 文档获知它所支持的选项。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
[外链图片转存失败(img-kDdIcsuC-1564457989855)(assets/1564454671117.png)]
04. 参考示例
4.1 显示文件或文件系统的详细信息
[deng@redhat test]$ stat passwd
文件:"passwd"
大小:2376 块:8 IO 块:4096 普通文件
设备:803h/2051d Inode:204060995 硬链接:1
权限:(0644/-rw-r--r--) Uid:( 1000/ deng) Gid:( 1000/ deng)
最近访问:2019-07-30 10:45:33.129075927 +0800
最近更改:2019-07-30 10:45:33.129075927 +0800
最近改动:2019-07-30 10:45:33.129075927 +0800
创建时间:-
[deng@redhat test]$
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
4.2 显示文件的三个时间
//显示最后修改时间 mtime
[deng@redhat test]$ ls -l passwd
-rw-r--r-- 1 deng deng 2376 7月 30 10:45 passwd
//显示最后更改时间 ctime
[deng@redhat test]$ ls -lc passwd
-rw-r--r-- 1 deng deng 2376 7月 30 10:45 passwd
//显示最后访问时间 atime
[deng@redhat test]$ ls -lu passwd
-rw-r--r-- 1 deng deng 2376 7月 30 10:45 passwd
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
关于三个时间说明
[外链图片转存失败(img-qR2CKzP8-1564457989856)(assets/1564454988610.png)]
事实上,stat命令显示的是文件的I节点信息。Linux文件系统以块为单位存储信息,为了找到某一个文件所在存储空间的位置,用I节点对每个文件进行索引。
所谓的I节点,是文件系统管理的一个数据结构,是一个64字节长的表,包含了描述文件所必要的全部信息,其中包含了文件的大小,类型,存取权限,文件的所有者
4.3 显示文件系统状态而非文件状态
[deng@redhat test]$ stat -f passwd
文件:"passwd"
ID:80300000000 文件名长度:255 类型:xfs
块大小:4096 基本块大小:4096
块:总计:25102106 空闲:21790085 可用:21790085
Inodes: 总计:50228736 空闲:49996786
[deng@redhat test]$
- 1
- 2
- 3
- 4
- 5
- 6
- 7
4.4 使用简洁格式输出
[deng@redhat test]$ stat -t passwd
passwd 2376 8 81a4 1000 1000 803 204060995 1 0 0 1564454733 1564454733 1564454733 0 4096
[deng@redhat test]$
- 1
- 2
- 3
4.5 跟踪显示链接文件信息
[deng@redhat test]$ ls -l link
lrwxrwxrwx 1 deng deng 6 7月 30 11:21 link -> passwd
[deng@redhat test]$ stat -L link
文件:"link"
大小:2376 块:8 IO 块:4096 普通文件
设备:803h/2051d Inode:204060995 硬链接:1
权限:(0644/-rw-r--r--) Uid:( 1000/ deng) Gid:( 1000/ deng)
最近访问:2019-07-30 10:45:33.129075927 +0800
最近更改:2019-07-30 10:45:33.129075927 +0800
最近改动:2019-07-30 10:45:33.129075927 +0800
创建时间:-
[deng@redhat test]$ stat link
文件:"link" -> "passwd"
大小:6 块:0 IO 块:4096 符号链接
设备:803h/2051d Inode:204061005 硬链接:1
权限:(0777/lrwxrwxrwx) Uid:( 1000/ deng) Gid:( 1000/ deng)
最近访问:2019-07-30 11:21:46.761346963 +0800
最近更改:2019-07-30 11:21:44.756343367 +0800
最近改动:2019-07-30 11:21:44.756343367 +0800
创建时间:-
[deng@redhat test]$
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
温馨提示:如果后面是符号链接,stat默认显示符号链接文件的属性。如果指定-L则显示符号链接指向文件的属性。
4.6 查看sda硬盘文件系统的信息
[deng@redhat test]$ stat -f /dev/sda
文件:"/dev/sda"
ID:0 文件名长度:255 类型:tmpfs
块大小:4096 基本块大小:4096
块:总计:249803 空闲:249803 可用:249803
Inodes: 总计:249803 空闲:249409
[deng@redhat test]$
- 1
- 2
- 3
- 4
- 5
- 6
- 7
4.7 查看sda磁盘信息
[deng@redhat test]$ stat /dev/sda
文件:"/dev/sda"
大小:0 块:0 IO 块:4096 块特殊文件
设备:5h/5d Inode:10675 硬链接:1 设备类型:8,0
权限:(0660/brw-rw----) Uid:( 0/ root) Gid:( 6/ disk)
最近访问:2019-07-17 08:54:53.165999409 +0800
最近更改:2019-07-17 08:54:50.519999533 +0800
最近改动:2019-07-17 08:54:50.519999533 +0800
创建时间:-
[deng@redhat test]$
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
05. 附录
OpenHarmony内核提供的Shell支持调试常用的基本功能,包含系统、文件、网络相关命令。同时OpenHarmony内核的Shell支持添加新的命令,可以根据需求来进行定制。
Shell功能仅供调试使用,暂不支持tab按键补全,按键回退等功能。
部分命令需要通过make menuconfig开启对应选项才可使用。
常用命令介绍
cat
用于显示文本文件的内容。需开启LOSCFG_FS_VFS。
命令格式
cat [FILE]
参数说明
class="table-box">参数 | 参数说明 | 取值范围 |
---|---|---|
FILE | 文件路径。 | 已存在的文件。 |
评论记录:
回复评论: