dongshan1811
2014-08-06 15:14
浏览 429
已采纳

在Go中使用filepath.Glob

I have this bit while trying to understand filepath.Glob

for _, v := range ListofPaths{
    exists, _ := filepath.Glob(fmt.Sprintf("%s/*/%s", v, filename))
}

Which works for any path

ListofPathsPath/any/dot/thing/filename.ext

but not

ListofPathsPath/filename.ext 

so from the above I need to match glob %s/%s or %s/*/%s

Is there a way to phrase this? I don't fully get the filepath.Match syntax yet and haven't found any comprehensive examples.

图片转代码服务由CSDN问答提供 功能建议

在尝试理解文件路径时,我有这句话。Glob

 对于_,v:=范围ListofPaths {
存在,_:= filepath.Glob(fmt.Sprintf(“%s / * /%s”,v,文件名))
} 
  <  / pre> 
 
 

可用于任何路径

  ListofPathsPath / any / dot / thing / filename.ext 
    
 
 

但不是

  ListofPathsPath / filename.ext 
   
 
 

所以从上面我 需要匹配glob%s /%s或%s / * /%s

是否可以用这种方式表达? 我还没有完全了解filepath.Match语法,也没有找到任何全面的示例。

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • douchen9855 2014-08-06 15:21
    已采纳

    This is really basic shell syntax, you can't do that.

    You will have to either call glob twice or just use filepath.Walk.

    已采纳该答案
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题