On Wednesday, 27 September 2017 at 10:05:34 UTC, Nicholas Wilson wrote:


I'd just use dirEntries with SpanMode.shallow in combination with filter either in a loop or a recursive function like below.

void foo(string path = "path")
{
foreach(e; dirEntries(path,SpanMode.shallow).filter!(myCritreia(paramters)))
    {
        if (e. isDir)
            foo(e.name); // recurse
        // do other stuff
    }
}

you will loop over all subdirs of "path" that satisfy `myCritreia`.

Thank you Nicolas. It's a good idea.

PS: With Linux find command, the thing can be done easily with `-prune` option:

```
find . -iname node_modules -prune
```

Without `-prune` option, there are a lot of unnecessary sub directories...

Reply via email to