Linux: 如何由st_mode获取文件的存取权限设置
各位大虾,在linux下我们通常用stat,fstat和lstat这样的函数来获取一个文件的属性信息,这些属性信息保存在struct stat这样一个结构中,这个结构中有一个st_mode字段,它包含了文件的类型,存取权限等设置;我们可以用S_ISREG等宏来判断文件类型,但是如何获取一个文件的owner,group,other相应权限呢?比如说有个文件的权限是
-rwxr-xr-x
如何得到这个属性呢?或者如何依据某些位运算得到相应的属性呢?严重感谢
我很久以前做过,,忘了,想想
楼上的兄弟,快想起来!!!!!!!
搞错了
C/C++ code:
char* p=& mode;//假设mode就是你得到的值
int i=0;
for(;i<3;++i,++p){
unsigned short checker=1<<2;
if(*p & checker)
printf("r");
else
printf("-");
checker=checker>>1;
if(*p & checker)
printf("w");
else
printf("-");
checker=checker>>1;
if(*p & checker)
printf("x");
else
printf("-");
checker=checker>>1;
}
}
搞定,谢谢各位
分享一下
获得st_mode八进制形式的低三位:
char *fileName = "./test";
struct stat fileInfo;
if(stat(fileName,&fileInfo) <0)
exit(errno);
unsigned int mask = 0000777;
unsigned int access = mask&
相关问答:
使用Struts2上传文件,在linux下报错
2009-09-29 14:56:20,801 [org.apache.struts2.interceptor.FileUploadInterceptor]-[ERROR] Processing of multipart/form-data request failed. c:/temp/upload__1dcd07ee_12 ......
小弟最近需要一个用socket获取html文档的代码,但是老是不能获取完整的html源码。原因不明,望高手指点!
C/C++ code:
char *Http_GET(char *host,int port,char *data) //发送GET请求
{
char response[2 ......
linux /etc/rc.d/目录下找不到rc3.d文件夹?
请教各位大虾指教?
命令行里:setup服务选项莫法用,请教下如何解决?
谢谢
弄哪去了?
不小心删除了?
那可惨了,copy个rc.5用用吧。 ......
while(1)
{
time_t now;
time(&now);
struct tm* pt=localtime(&now);
cout < < "当前时间" < < pt->t ......
各位大虾,我正在学习Linux,可是Linux图形界面和命令行之间切换遇到困难,在命令行下输入startx,不是进入图形界面
而是出现
请问各位,这是为什么? 而且按Ctrl+Alt+F7,也不能命令行进入图形界面。
急急急
......