Powershell Copier-Élément, mais ne copie que les fichiers modifiés

Je suis en train de répéter à travers un répertoire et copier de A à B. Qui peut être réalisé avec les éléments suivants:

Copy-Item C:\MyTest C:\MyTest2 recurse

Je veux être en mesure de bien que de copier seulement les nouveaux fichiers (ceux qui existent dans src, mais pas dest) et aussi ne copie que les fichiers qui ont peut-être changé basé sur une vérification CRC et pas un datetime timbre.

$file = "c:\scripts"
param
(
$file
)

$algo = [System.Security.Cryptography.HashAlgorithm]::Create("MD5")
$stream = New-Object System.IO.FileStream($file, [System.IO.FileMode]::Open)

$md5StringBuilder = New-Object System.Text.StringBuilder
$algo.ComputeHash($stream) | `
% { [void] $md5StringBuilder.Append($_.ToString("x2")) }
$md5StringBuilder.ToString()

$stream.Dispose() 

Ce code me donne un contrôle CRC sur un fichier en particulier...je ne suis pas sûr de savoir comment mettre les deux scripts ensemble pour vraiment me donner ce dont j'ai besoin. Aussi, je ne sais pas si la vérification CRC ci-dessus est en fait la façon correcte de le faire.

Quelqu'un a une idée?

  • Ma première question serait avez-vous regardé juste avec Robocopy? Vous êtes vraiment réinventer très bien conçu roue ici.
InformationsquelleAutor | 2009-03-24