Combiner les résultats de deux appels Get-ChildItem distincts en une seule variable pour faire le même traitement sur eux

Je suis en train d'écrire un script PowerShell pour créer une liste de fichiers, à partir de plusieurs répertoires. Après tous les répertoires ont été ajoutés à la liste principale, j'aimerais faire le même traitement à tous les fichiers.

C'est ce que j'ai:

$items = New-Object Collections.Generic.List[IO.FileInfo]

$loc1 = @(Get-ChildItem -Path "\\server\C$\Program Files (x86)\Data1\" -Recurse)
$loc2 = @(Get-ChildItem -Path "\\server\C$\Web\DataStorage\" -Recurse)

$items.Add($loc1) # This line fails (the next also fails)
$items.Add($loc2)

# Processing code is here

qui échoue avec ce message d'erreur:

Ne peut pas convertir l'argument "0", avec
valeur: "le Système de.Object[]", pour "Ajouter" pour
"type de Système.IO.FileInfo": "Ne Peut Pas
convertir le Système".Object[]" va lue
"type de Système.Object[]" type
"Le système de.IO.FileInfo"."

Je suis surtout intéressé à la quelle est la bonne approche pour ce type de situation. Je me rends compte que mon code est un très C moyen de le faire -- s'il y a un plus PowerShell façon d'accomplir la même tâche, je suis tout à fait pour. La clé, c'est que le nombre de $loc#'s peuvent changer au fil du temps, de sorte que l'ajout et la suppression d'un ou de deux devrait être facile dans le code résultant.

source d'informationauteur Nate