当前位置: 技术问答>linux和unix
诡异问题,明明是目录但返回值不是
来源: 互联网 发布时间:2017-01-02
本文导语: struct stat st; lstat("/usr/zjhc/fee/txt", &st); logmodule.WriteLog("目录 %s 模式 %d",path,st.st_mode); if(S_ISDIR(st.st_mode)) return 1 else return 0; /usr/zjhc/fee/txt这个确实是目录,用cd /us...
struct stat st;
lstat("/usr/zjhc/fee/txt", &st);
logmodule.WriteLog("目录 %s 模式 %d",path,st.st_mode);
if(S_ISDIR(st.st_mode))
return 1
else
return 0;
/usr/zjhc/fee/txt这个确实是目录,用cd /usr/zjhc/fee/txt可以进入目录,但返回是0。
lstat("/usr/zjhc/fee/txt", &st);
logmodule.WriteLog("目录 %s 模式 %d",path,st.st_mode);
if(S_ISDIR(st.st_mode))
return 1
else
return 0;
/usr/zjhc/fee/txt这个确实是目录,用cd /usr/zjhc/fee/txt可以进入目录,但返回是0。
|
如果txt是个链接的话,链接到一个目录
那么/usr/zjhc/fee/txt 就不是个目录,但是cd是可以的
这种情况下
lstat("/usr/zjhc/fee/txt/", &st)可以得到你想要的结果
那么/usr/zjhc/fee/txt 就不是个目录,但是cd是可以的
这种情况下
lstat("/usr/zjhc/fee/txt/", &st)可以得到你想要的结果
|
ls -ld /usr/zjhc/fee/txt
看看,不会是符号链接吧?
看看,不会是符号链接吧?