ich zur Zeit eine Arbeits Robo Copy-Funktion hat, die den Prozentsatz der aktuellen Datei Spuren übertragen werden. Ich habe versucht, es zu bekommen, um die Anzahl der übertragenen Dateien aus der Gesamtzahl zu verfolgen, zum Beispiel 10/50 Dateien, die übertragen wurden. Ich habe versucht, Trevor Sullivan für den Fortschritt, aber es funktioniert nicht mit meinem Skript. HierPowershell Robo Copy File Transfer Fortschritt
ist ein Segment:
Function global:music_Transfer{
if($WPFmusic_checkBox.IsChecked -eq $true){
$quotation = ":"
$source = "$DLetter$quotation\Users\$associd\Music"
$destination = "C:\Users\$env:USERNAME\Music"
$copy = "/COPY:DTO"
$files = "*.*"
$backup = "/B"
$reportextrafiles = "/X"
$verboseoutput = "V"
$fullpathname = "FP"
$mirror = "/MIR"
$backupmode = "/ZB"
$subfolders = "/E"
$Retries = "/R:2"
$consolewrite = "/TEE"
robocopy.exe $source $destination $files $backup $reportextrafiles $verboseoutput $fullpathname $mirror $backupmode $subfolders $Retries $consolewrite | ForEach-Object -Process {
$data = $_.Split([char]9);
if (($data.Count -gt 4) -and ("$($data[4])" -ne ""))
{
$file = "$($data[4])"
Write-Progress "Percentage $($data[0])" -Activity "Music" -CurrentOperation "$($file)" -ErrorAction SilentlyContinue;
}
else
{
Write-Progress "Percentage $($data[0])" -Activity "Music" -CurrentOperation "$($file)"
}
}
# Robocopy has a bitmask set of exit codes, so only complain about failures:
[int] $exitCode = $global:LastExitCode;
[int] $someCopyErrors = $exitCode -band 8;
[int] $seriousError = $exitCode -band 16;
if (($someCopyErrors -ne 0) -or ($seriousError -ne 0))
{
Write-Error "ERROR: robocopy failed with a non-successful exit code: $exitCode"
}
}
}
Es verfolgt, was übertragen wird, und der Fortschritt der einzelnen Dateien, aber nicht total Dateien. Jede Hilfe wäre willkommen. Vielen Dank.
Ich habe versucht, in die Funktion zu arbeiten, aber es hielt den Fehler zurückkehrt oder die Dateien nicht richtig berechnet wird. Irgendwelche anderen Ideen? –
versuchen, die '$ Ersetzen von Dateien =' mit diesem: '$ files = dir $ source -recurse -file' –
Ich denke, dass festgelegt, dass alle Ideen auf, die„Can not Parameter 'Aktivität' binden, weil es null ist –