Sta procedendo vedo!
Occhio che in questo modo però estrapola i percorsi di tutta l'unità, non solo quelli della directory corrente e sottodirectory. Dovresti mettere . al posto di \ nel comando del for.
Piuttosto nel secondo for stai filtrando le directory con quell' *.* o sbaglio?
Ci potrebbero essere directory con il punto nel nome e file senza estensione. mi sa che bisogna filtrare in base all'attributo.