Considerando que Get-ChildItem $root -directory
fornece o mesmo resultado que
Get-ChildItem $root | Where-Object {$_.PSIsContainer}
você poderia tentar (não sei a sintaxe detalhada PS
)
Get-ChildItem $root -file
ou até mesmo
gci $root -file
Não tenho certeza se o restante do seu script precisa ser melhorado ...