23,120
社区成员
发帖
与我相关
我的任务
分享
#include <sys/stat.h>
char szMode[16]; // 权限信息
struct stat st;
if( lstat("yourfile", &st) < 0 )
{
perror("lstat");
exit(0);
}
// 初始化权限信息
strcpy(szMode, "-----------");
/* 判别文件类型 */
if( S_ISDIR(st.st_mode) )
szMode[0] = 'd';
else if( S_ISLNK(st.st_mode) )
szMode[0] = 'l';
if( st.st_mode & S_IRUSR )
szMode[1] = 'r';
if( st.st_mode & S_IWUSR )
szMode[2] = 'w';
if( st.st_mode & S_IXUSR )
szMode[3] = 'x';
if( st.st_mode & S_IRGRP )
szMode[4] = 'r';
if( st.st_mode & S_IWGRP )
szMode[5] = 'w';
if( st.st_mode & S_IXGRP )
szMode[6] = 'x';
if( st.st_mode & S_IROTH )
szMode[7] = 'r';
if( st.st_mode & S_IWOTH )
szMode[8] = 'w';
if( st.st_mode & S_IXOTH )
szMode[9] = 'x';