前面我们初步认识了stat这个函数,并用它学会了查看文件的大小:linux 用stat 函数来查看文件大小;
现在我们来再看看stat 结构体中的 st_mode 成员,st_mode 其实是2byte的16bit的数,下面是用八进制表示的st_mode ,总共包含了下面这些情况:
S_IFMT 0170000 掩码
S_IFSOCK 0140000 套接字
S_IFLNK 0120000 符号连接(软链接)
S_IFREG 0100000 一般文件
S_IFBLK 0060000 块设备
S_IFDIR 0040000 目录
S_IFCHR 0020000 字符设备
S_IFIFO 0010000 管道
S_ISUID 04000 文件的(set user-id on execution)位
S_ISGID 02000 文件的(set group-id on execution)位
S_ISVTX 01000 文件的sticky位
S_IRUSR(S_IREAD) 00400 文件所有者具可读取权限
S_IWUSR(S_IWRITE)00200 文件所有者具可写入权限
S_IXUSR(S_IEXEC) 00100 文件所有者具可执行权限
上面这三个用 (S_IRWXU) 00700 的掩码;
S_IRGRP 00040 用户组具可读取权限
S_IWGRP 00020 用户组具可写入权限
S_IXGRP 00010 用户组具可执行权限
上面