Я пытаюсь пройтись по каталогу и скопировать его из А в Б. Это можно сделать с помощью следующего:
Copy-Item C:\MyTest C:\MyTest2 –recurse
Я хочу иметь возможность копировать только новые файлы (которые существуют в src, но не dest), а также копировать только те файлы, которые могли измениться, основываясь на проверке CRC, а не на отметке даты и времени.
$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()
Этот код дает мне проверку CRC для конкретного файла ... Я просто не уверен, как соединить два сценария, чтобы действительно дать мне то, что мне нужно. Я также не знаю, является ли приведенная выше проверка CRC правильным способом для этого.
У кого-нибудь есть понимание?