易截截图软件、单文件、免安装、纯绿色、仅160KB

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&


相关问答:

北京急招linux、PHP网络应用开发

我们隶属中科院计算所网络重点实验室(http://www.ict.ac.cn/survey/channel/detail443.asp)基础设施课题组.
现因项目和业务拓展的需要,特需要招聘与项目相关的网络应用工程师1-2名。

具体要求如下。有意者 ......

linux下安装了jdk1.4但版本还是1.3.1

linux下安装了jdk1.4但版本还是1.3.1,又安装完1.5也同样版本还是1.3.1  有去配置.bashrc文件内容如下    
      set JAVA_HOME=/usr/share/jdk1.5.0_05
      export JAVA_HOME
   ......

linux下怎么设置udp接收缓存最大值?

if(setsockopt(TUdpRec_sUDP,SOL_SOCKET,SO_RCVBUF,(const char*)&nRecvBuf,sizeof(int)) == 0)
printf( "set senbufsize = %d\n", nRecvBuf);
if(getsockopt(TUdpRec_sUDP, SOL_SOCKET, SO_RC ......

linux一个sleep的奇怪问题,高手来给解答下了

while(1)
{
    time_t now;
    time(&now);
    struct tm* pt=localtime(&now);
    cout < < "当前时间" < < pt->t ......

Linux如何在图形界面和命令行之间切换 [

各位大虾,我正在学习Linux,可是Linux图形界面和命令行之间切换遇到困难,在命令行下输入startx,不是进入图形界面 
而是出现
请问各位,这是为什么? 而且按Ctrl+Alt+F7,也不能命令行进入图形界面。&nbs ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号