stat函数返回是通过文件名查找到的状态信息,当文件名是一个符号链接时,sta返回是的是该链接所指向的文件信息。
stat结构的成员在不同的类UNIX系统上会有所变化,但一般包含下表中所示的内容:
stat结构中返回的st_mode标志还有一些与之关联的宏,他们定义在头文件<sys/stat.h>中,这些宏包括对访问权限、文件类型标志以及一些用于帮助测试特定类型和掩码的定义。
下面列出用于解释st_mode标志的掩码:
如果想要测试一个文件代表的不是目录,设置了属主的执行权限,并且不在有其他权限,可以使用如下代码测试:
struct stat statbuf;
mode_t modes;
stat("filename",&statbuf);
modes=statbuf.stmode;
if(!S_ISDIR(modes)&&(modes & S_IRWXU)==S_IXUSER)
...