que estoy tratando de recursivo a través de un directorio y copiarlo de A a B. Esto se puede hacer con lo siguiente:Powershell Copy-Item pero sólo copiar los archivos modificados
Copy-Item C:\MyTest C:\MyTest2 –recurse
Quiero ser capaz de pesar a solo copie los archivos nuevos (que existen en src pero no en el disco) y también solo copie los archivos que pueden haber cambiado basándose en una verificación de CRC y no en un sello de fecha y hora.
$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()
Este código me da una comprobación CRC en un archivo específico ... Soy simplemente no está seguro cómo poner los dos guiones juntos para darme realmente lo que necesito. Tampoco sé si la verificación del CRC anterior es en realidad la forma correcta de hacerlo.
¿Alguien tiene alguna idea?
Mi primera pregunta sería ¿has mirado simplemente usando Robocopy? Realmente estás reinventando una rueda muy bien diseñada aquí. – EBGreen