如何获取其中的所有文件/var
及其子目录,但同时忽略列出子目录文件夹名称?
我已经尝试过Dir["/var/*"]
,但它没有列出子目录中的所有文件。
Dir["/var/**/*"]
此**
模式中出现的 匹配零个或多个嵌套目录的任何路径片段,但不匹配文件。
让我们分解一下:
当你有/var/somefile.txt
(你的系统上可能不存在,因为/var
很可能只有目录)时,这就是你的 glob 的每个部分将匹配的内容:
Part of pattern Part of directory path
/var /var
** (nothing)
* somefile.txt
对于文件/var/run/NetworkManager.pid
:
Part of pattern Part of directory path
/var /var
** run
* NetworkManager.pid
对于文件/var/spool/mail/news
:
Part of pattern Part of directory path
/var /var
** spool/mail
* news
我不确定Dir['/var/**']
它自己会做什么。我认为要使其按您期望的方式工作,您总是需要在**
.