ProgressBar для архива Zip в PowerShell - PullRequest
0 голосов
/ 20 ноября 2018

У меня есть кусок кода, который прекрасно работает в powershell.Однако я хочу визуализировать объем работы (процесс архивации).

    Write-Host "Started zipping files and folders..." -ForegroundColor Yellow

    Add-Type -Assembly System.IO.Compression.FileSystem
    $compressionLevel = [System.IO.Compression.CompressionLevel]::Optimal
    $zip = [System.IO.Compression.ZipFile]::CreateFromDirectory("$Destination\$folderName\",
        "$Destination\$folderName.zip", $compressionLevel, $false)
    if ($?) {
        Write-Host "Zip process success. Exiting..." -ForegroundColor Yellow
        Invoke-Item "$Destination"
        sleep -Seconds 2
    }
    else {
        Write-Host "Zip process failed." -ForegroundColor Red
    }

Я предполагаю, что мне нужно поставить что-то вроде:

Write-Progress -Activity "Zipping files and folders..." -Status "Progress:" -PercentComplete ($zip/something?)}

Я использую Powershell v 5.1

ОБНОВЛЕНИЕ: Я, вероятно, изменю и использую встроенный командлет Compress-Archive

1 Ответ

0 голосов
/ 20 ноября 2018

Если вы используете Compress-Archive , он сделает то, что вы хотите, и покажет индикатор выполнения.

Compress-Archive -Path "$Destination\$folderName" -DestinationPath "$Destination\$folderName.zip"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...