![]() |
![]() | ![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
| Welcome to Windows Vista Forums. Our forum is dedicated to helping you find solutions with any problems, errors or issues you are experiencing with Windows Vista. The Vista forum also covers news and updates and has an extensive Windows Vista tutorial section that covers a wide range of tips and tricks. |
| |||||||
![]() |
| |
| | #1 (permalink) |
| | compare-object I wrote this function and it takes two params. One to the source dir and one to the dest. Think of it as a folder syncer that syncs source to dest. It works great if the filenames are different or if the file doesn't exist in either. However, if the files in the source and dest have the same name but are actually different files it still sees them as == which is wrong. It needs to treat them as different because they are in fact different. function foldermirror { param ($source, $dest) $comparedirs = Compare-Object (gci $source) (gci $dest) if ($comparedirs | Where-Object {$_.SideIndicator -eq '=>'}) { $comparedirs | Where-Object {$_.SideIndicator -eq '=>'} | ForEach-Object{Write-Host "Removing"($_.InputObject).FullName Remove-Item ($_.InputObject).FullName} } if ($comparedirs | Where-Object {$_.SideIndicator -eq '<='}) { $comparedirs | Where-Object {$_.SideIndicator -eq '<='} | ForEach-Object{Write-Host "Copying"($_.InputObject).FullName "to" $dest Copy-Item ($_.InputObject).FullName -Destination $dest} } else { Write-Host "The directories are the same" } } |
My System Specs![]() |
![]() |
| Thread Tools | |
| |
Similar Threads | ||||
| Thread | Forum | |||
| Formating with Compare-Object | PowerShell | |||
| compare object | PowerShell | |||
| Compare-Object and Get the name of object/File? | PowerShell | |||
| Testing object arrays using Compare-Object and -contains | PowerShell | |||
| Adding canonical aliases for Compare-Object, Measure-Object, New-Object | PowerShell | |||