急!!!关于glob函数的问题

Z___P 2012-05-18 02:00:47
为了实现搜索一个目录中特定模式的文件,采用了glob函数的方法进行。

搜索的指定目录 变量sFileName
sprintf(sFileName,"%s/%s/%s",getenv("HOME"),SFILE,"*.RESP.TEMP");

宏定义SFILE
#define SFILE "filesrv/history/over_his"

glob_t globbuf;
glob(sFileName, 0, NULL, &globbuf);

读取方式
for(i=0;i<globbuf.gl_pathc;i++) {
使用了globbuf.gl_pathv[i]变量,但并无改变原值的操作。
}

但是日志中出现了globbuf.gl_pathv[i]的值是

"filesrv/history/"


问题是:什么情况下 glob函数 的搜索会向前扩大范围?

请各位指教,谢谢!!!





...全文
334 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Z___P 2012-05-24
  • 打赏
  • 举报
回复
正则表达式没有问题,传入前打出的日志显示是正常的,就是我要扫描的具有一定规则的文件。
而且开发机上的测试也是正常找到文件的情况。
肯定不是通配符问题。
qq120848369 2012-05-22
  • 打赏
  • 举报
回复
路径不同就要改通配表达式啊.
Z___P 2012-05-22
  • 打赏
  • 举报
回复
开发机与生产机唯一的不同是,这个目录下文件的个数和大小不一致。

开发环境的日志是“filesrv/history/over_his/文件名”
但是
生产环境的日志是“filesrv/history/”

所以我才有此一问,看看是不是我glob函数的参数传的不正确。
qq120848369 2012-05-18
  • 打赏
  • 举报
回复
你确定吗? 日志怎么写的。

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧