Bonjour à tous,
Voici une portion de script dérivant comment comparer le contenu de deux dossiers.
Le but ici est d’identifier :
- les fichiers en commun
- les fichiers présents uniquement dans le premier dossier
- les fichiers présents uniquement dans le second dossier
Notez que dans la présente situtation, la comparaison se fait au niveau du nom du fichier (-Property Name), mais vous pouvez lancer la comparaison sur un ou plusieurs autres critères comme par exemple le nom et la date de modification.
1 2 3 4 5 6 7 | $FolderContent1 = @(Get-ChildItem -Path "<FolderPath1>") | where {!$_.PSIsContainer} $FolderContent2 = @(Get-ChildItem -Path "<FolderPath2>") | where {!$_.PSIsContainer} $ComparisonResult = Compare-Object -ReferenceObject $FolderContent1 -DifferenceObject $FolderContent2 -Property Name -IncludeEqual $EqualFiles = $ComparisonResult | Where-Object{$_.SideIndicator -eq "=="} $FilesOnlyInTheFirstFolder = $ComparisonResult | Where-Object{$_.SideIndicator -eq "<="} $FilesOnlyInTheSecondFolder = $ComparisonResult | Where-Object{$_.SideIndicator -eq "<="} |
et le résultat si je ne souhaite afficher que les fichiers présents dans les deux dossiers :