在Cake构建脚本中获取目录列表

4

有没有一种简单的方法来获取给定目录路径的目录列表(例如DirectoryPathCollection)?

我想要能够轻松地获取当前目录以及给定路径下的所有目录。

目录操作参考DirectoryPath目录别名中,我都没有看到明显的方法。

解决方法

到目前为止,我发现了几种可行的方法。

使用GlobbingAliases.GetDirectories方法并带有匹配所有参数,但这似乎有点像一个hack。(它还有一些问题,尝试获取子目录,但这将是我将要调查的另一个问题。)

var allDirectories = GetDirectories(@".\*");

此外,我直接使用 System.IO.Directory 方法也取得了成功。
var allDirectories = System.IO.Directory.GetDirectories(".", "*", System.IO.SearchOption.TopDirectoryOnly).Select (d => new DirectoryPath(d));
1个回答

2

除了阅读源代码之外,是否有关于GetDirectories方法的filter参数的参考/指南?即使是一个使用示例也可能会有所帮助。 - patridge
此外,什么情况下应该使用 IDirectory 而不是 DirectoryPath?我是否应该将所有使用 DirectoryPath 的地方重写为目标 IDirectory - patridge
IDirectory是“低级别”的,你将主要使用globber GetDirectories和DirectoryPath,这也是大多数别名用于参数的内容。 - devlead

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接