假设目录结构为:
a/b/c/d/e/f/g/h
我试图通过以下方式找到“h”:
Dir.glob('a/**/f/g/h')
但是这不起作用。有什么想法吗?
您可以尝试下面的测试用例:
$ /usr/bin/ruby -v
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]
$ mkdir -p a/b/c/d/e/f/g/h
$ ruby -e "puts Dir.glob('a/**/*')"
a/b
a/b/c
a/b/c/d
a/b/c/d/e
a/b/c/d/e/f
a/b/c/d/e/f/g
a/b/c/d/e/f/g/h
$ ruby -e "puts Dir.glob('a/**/h')"
a/b/c/d/e/f/g/h
$ ruby -e "puts Dir.glob('a/**/g/h')"
a/b/c/d/e/f/g/h
$ ruby -e "puts Dir.glob('a/**/f/g/h')"
**nothing**
最佳答案
这是一个错误,已通过变更集 r36905 解决。耶!
关于Ruby 1.9.3 Dir.glob 奇怪的递归匹配行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12241772/