stat.h 文件

用途

定义由子例程的统计信息系列返回的数据结构。

描述

/usr/include/sys/stat.h 文件中的 stat 数据结构返回 statfstatlstatstatxfstatx 子例程的信息。

统计 数据结构中包含以下字段:

描述
st_dev 包含该文件的目录条目的设备。
st_ino 此文件在其设备上的索引。 通过指定文件所在的设备及其在该设备上的索引来唯一地标识该文件。
st_mode 文件方式。 可能的文件方式值在 /usr/include/sys/mode.h 文件的描述中给出。
st_nlink 使用 链接 子例程创建的文件的硬链接 (备用目录条目) 数。
st_access 未实现字段。 所有位都返回为零。
st_size 文件中的字节数 (包括任何孔)。 此字段还定义该文件的文件结束标记的位置。 只有子例程 (例如 子例程) 才会更新文件结束符标记。 如果该文件由 什马特 子例程映射,并且某个值存储在超过文件结束标记的页中,那么当该文件关闭或强制永久存储时,该标记将更新为包含此页。
st_rdev 设备的标识。 此字段仅针对块或字符特殊文件定义。
st_atime 上次访问文件数据的时间。st_atimest_atime_n一起表示自戳记以来的最后一次文件访问时间 (以秒和纳秒为单位)。
st_atime_n 上次访问文件数据的时间。st_atimest_atime_n一起表示自戳记以来的最后一次文件访问时间 (以秒和纳秒为单位)。
st_mtime 上次修改文件数据的时间。st_mtimest_mtime_n一起表示自戳记以来的最近一次文件修改时间 (以秒和纳秒为单位)。
st_mtime_n 上次修改文件数据的时间。st_mtimest_mtime_n一起表示自戳记以来的最近一次文件修改时间 (以秒和纳秒为单位)。
st_ctime 最近一次更改文件状态的时间。st_ctimest_ctime_n一起表示自戳记以来的最后一次文件状态更改 (以秒数和纳秒计)。
st_ctime_n 最近一次更改文件状态的时间。st_ctimest_ctime_n一起表示自戳记以来的最后一次文件状态更改 (以秒数和纳秒计)。
st_blksize 文件的每个块的大小 (以字节为单位)。
st_blocks 文件实际使用的块数 (以 设备大小 (_B) 常量指定的单位为单位测量)。
st_gen 此索引节点的生成号。
st_type 对象的 v-node 的类型。 这是 /usr/include/sys/vnode.h 文件中定义的下列其中一个值:
VNON
未分配的对象; 不应发生此情况
VBAD
未知类型的对象
VREG
常规文件
VDIR
目录文件
VBLK
块设备 (block device)
VCHR
字符设备 (character device)
VLNK
符号链接
VSOCK
套接字
先入先出法
FIFO
VMPC
复用字符设备。
st_vfs 虚拟文件系统 (VFS) 标识,用于标识包含该文件的 VFS。 通过将此值与 mntctl 子例程返回的 VFS 编号进行比较,可以识别该文件所在的主机的名称。
st_vfstype 文件系统类型,如 /usr/include/sys/vmount.h 文件中所定义。
st_flag 用于指示文件或目录是否为虚拟安装点的标志。 此标志可以具有以下值:
FS_VMP
指示文件是一个虚拟安装点。
FS_Mount
指示文件是一个虚拟安装点。
FS_REMOTE
指示文件驻留在另一台机器上。
st_uid 文件所有者标识。
st_gid 文件组标识。

/usr/include/sys/stat.h 文件中的 stat64 数据结构返回 stat64fstat64lstat64 子例程的信息。 stat64 结构包含的字段与 统计 结构相同,但以下字段除外:

描述
st_size 文件中的字节数。 该st_size字段是 64 位的数量,允许文件大小大于OFF_MAX.st_sizestat64 结构的字段为以下类型off64_t.

对于远程文件, st_atime,st_mtimest_ctime字段包含服务器上的时间。

以下项的值:st_atime字段可由以下子例程更改:

以下项的值:st_ctimest_mtime字段可以由以下子例程设置:

此外, 施姆特 子例程还可以更改st_mtime字段,并且 Chmod 菲赫莫德Chown乔恩克斯弗琼富恩克斯 子例程可更改st_ctime

因为它们可以创建一个新对象,所以 奥佩克斯克里特辛链接姆克诺德姆迪尔管道 子例程可以设置st_atime,st_ctimest_mtime字段。