我可以使用"**"glob遍历Ruby中的符号链接目录吗?

Pee*_*eja 21 ruby symlink

在Ruby中,Dir.glob("**/*.rb")(例如)不遍历符号链接目录.是否有可能获得**遍历符号链接?

我正在使用两个以这种方式查找文件的gem,但我需要它们来查看符号链接目录中的文件.

Tim*_*per 36

乔纳森的聪明和狡猾的方法是伟大的,能够削减成群的符号链接,但只需轻轻一点星号,muahaha.然而,它有不幸的副作用,不返回直接儿童比赛.改进版可能是:

Dir.glob("**{,/*/**}/*.rb")
Run Code Online (Sandbox Code Playgroud)

哪个(在我的测试中)都会遵循一个符号链接并返回直接的孩子.


Jon*_*ski 12

由于存在无限循环的风险,通常不会使用递归搜索.

但是,这个讨论可能有所帮助:

Dir.glob("**/*/**/b") 将遵循符号链接一次.