J'utilise la commande PowerShell Copy-Item pour copier un répertoire contenant des fichiers vers un autre emplacement.
Je souhaite afficher tous les fichiers en cours de copie sur la console afin de connaître l'état de la commande de copie.
Si vous voulez seulement voir cela dans la console, utilisez le commutateur -verbose
:
copy-item -path $from -destination $to -verbose
Si vous souhaitez obtenir une liste de fichiers ou de répertoires:
$files = copy-item -path $from -destination $to -passthru | ?{$_ -is [system.io.fileinfo]}
$source=ls c:\temp *.*
$i=1
$source| %{
[int]$percent = $i / $source.count * 100
Write-Progress -Activity "Copying ... ($percent %)" -status $_ -PercentComplete $percent -verbose
copy $_.fullName -Destination c:\test
$i++
}
Je suggère d'essayer de cette façon:
(Copy-Item -Verbose C:\SrcDir\*.* c:\DstDir 4>&1).Message
Ici, les messages de copie sont dirigés vers le flux/pipeline de sortie plutôt que vers le flux/pipeline détaillé et fonctionnent donc plus généralement, comme dans les scripts de tâches TFS.