L'impossibilité d'exclure le répertoire à l'aide de Get-ChildItem -Exclure paramètre en Powershell
Je suis à l'aide de Powershell v 2.0. et la copie de fichiers et de répertoires à partir d'un emplacement à un autre. Je suis l'aide d'une chaîne de caractères[] pour filtrer les types de fichiers et aussi besoin de filtrer un annuaire d'être copié. Les fichiers sont filtrés correctement, cependant, le répertoire que je suis en train de filtre obj
continue à être copié.
$exclude = @('*.cs', '*.csproj', '*.pdb', 'obj')
$items = Get-ChildItem $parentPath -Recurse -Exclude $exclude
foreach($item in $items)
{
$target = Join-Path $destinationPath $item.FullName.Substring($parentPath.length)
if( -not( $item.PSIsContainer -and (Test-Path($target))))
{
Copy-Item -Path $item.FullName -Destination $target
}
}
J'ai essayé différentes manières de les filtrer, \obj
ou *obj*
ou \obj\
mais rien ne semble fonctionner.
Merci pour toute aide.
- Voir aussi stackoverflow.com/q/15294836/399704 pour une question similaire
Vous devez vous connecter pour publier un commentaire.
La
-Exclude
paramètre est assez cassé. Je vous recommande de filtrer les répertoires que vous ne voulez pas utiliserWhere-Object (?{})
. Par exemple:P. S.: Mot d'avertissement – ne pensez même pas à l'aide de
-Exclude
surCopy-Item
lui-même.- Je utiliser à la liste des fichiers sous une racine, mais pas inclure les répertoires