为什么将glob
函数与路径/home/user/*/
一起使用会同时返回目录和文件。我希望由于路径以/
结尾,因此只应返回目录,但它也将返回文件。
我正在运行以下代码:
vector<string> glob(const std::string& path)
{
glob_t glob_result;
glob(path.c_str(),GLOB_TILDE,NULL,&glob_result);
vector<string> ret;
for(unsigned int i=0;i<glob_result.gl_pathc;++i){
ret.push_back(string(glob_result.gl_pathv[i]));
}
globfree(&glob_result);
return ret;
}
该功能的输入为/home/user/*/
,输出为/home/user/a.txt
,/home/user/b.txt
和/home/user/nested_folder
为什么要同时返回文件和目录,而不是仅返回目录。
答案 0 :(得分:0)
这是glibc 2.19中修复的旧glibc错误: