版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a1010256340/article/details/88398030
1. 获取文件的属性
$stat filename
1.1 获取文件系统信息
$stat -f /dev/sda1 #此获取的是文件系统(分区),而不是文件
1.2 stat支持许多取得文件属性的格式代码,基本用法为 :
stat -c 格式代码 filename
%A 用文件权限代码表示,如-rw-r--r--
%a 用八进制数字表示文件权限
%b 占用的区块数量
%B 用%b计算区块数量时,每一区块的大小,预设是512bytes
%D 用16进制表示设备编号
%d 用10进制表示设备编号
%F 文件形态,即文件类型
%f raw mode以16进制表示
%G 文件拥有者的组名
%g 文件拥有着的群组编号
%h 硬链接的数量
%i inode编号
%N 将符号链接的文件明和其指向的文件的文件名,用引号包含,'1.sh'->'h.sh'
%n 文件名
%o IO区块的大小,预设是4096bytes
%s 文件大小
%T 16进制表示Minor次要设备代码
%t 16进制表示Major主要设备代码
%U 文件拥有者的使用者名称
%u 文件拥有者的使用者编号
%X 取用时间,用1900.1.1至取用时间的秒数
%x 取用时间
%Y 修改时间,类似取用时间
%y 修改时间
%Z 属性改动时间
%z 属性改动时间
如:获取文件的大小
$stat -c %s file
1.3 适用于文件系统(即分区)的格式代码:
%a 一般使用者可自由运行的区块数
%b 全部的区块数
%c 全部的文件节点数
%d 可取用的文件节点数
%f 可取用的区块数
%i 使用16进制数表示的文件系统代码
%l 最大的文件名长度
%n 文件名
%s 最佳传输的文件大小
%T 用易于了解的方式表示文件系统的格式
%t 用16进制数表示文件系统的格式
如:获取最大的文件名长度
$stat -f -c %l /dev/sda1