2010-01-17 9 views
4

Existe-t-il un moyen facile de vérifier que tous les fichiers ont été correctement copiés lors de l'appel d'un élément de copie? J'ai pensé à utiliser la somme de contrôle sur tous les fichiers, mais j'imagine que Powerhell (v2) aurait déjà quelque chose, et je ne peux pas le trouver.Vérifier la copie du fichier dans powershell

Répondre

2

Non, il n'y en a pas et voici pourquoi. Copy-Item est une applet de commande générique qui fonctionne pour tous les fournisseurs d'espaces de noms. Les éléments copiés peuvent donc être des fichiers, des paramètres de registre ou des sections de configuration IIS, etc. La vérification d'une copie de fichier est assez différente de la vérification d'une copie des paramètres du registre.

MISE À JOUR: Comme indiqué par @Dave_S, le commutateur de vérification de la commande XCOPY n'est pas le type de vérification que vous recherchez.

Si vous copiez des fichiers texte, vous pouvez utiliser le commandlet PowerShell Compare-Object.

Si vous copiez des fichiers binaires, vous pouvez utiliser la commande système fc.exe avec le commutateur /b.

+4

http://support.microsoft.com/kb/126457 comme indiqué dans l'autre (non) réponse. – Joey

5

Je sais que c'est un vieux fil, mais je pensais que je publierais juste au cas où quelqu'un d'autre le lit ... le commutateur/v NE PAS vérifier les données! Il s'assure simplement que la copie est lisible. Voir http://support.microsoft.com/kb/126457 pour plus de détails.

+1

+1 Je trouve que c'est une information importante! – psj

0

Ma solution préférée actuelle est xcopy en combinaison avec un audit hashdeep. Peut être emballé ensemble dans un petit fichier BAT.

0

Juste une mise à jour, Powershell v4 comprend Get-FileHash qui peut être utilisé pour vérifier qu'un fichier a été copié avec succès. Si le hachage est le même, le fichier a été copié avec succès. Lien vers TechNet Library. J'utilise this answer pour trouver ce qui suit.

(Get-ChildItem -file -path c:\files -Recurse).FullName | foreach {get-filehash $_ -Algorithm md5} Peut également être acheminé dans Export-CSV pour comparer visuellement les hachages de fichiers.

+2

Downvote pour faute d'orthographe "Algorithm" et l'ajout de 5 minutes pour déterminer ce qui ne va pas avec PowerShell. : P –

+0

Revenant à commenter, au moins j'utilise des noms de paramètres complets! Au lieu du raccourci '-Alg' – user4317867

Questions connexes