首页 > 解决方案 > PowerShell:Invoke-RestMethod - 显示百分比进度

问题描述

我正在使用 PowerShell 来自动化我的构建和上传过程。作为其中的一部分,我正在使用Invoke-RestMethod将我的文件上传到我的 API 端点。这是我上传的命令:

Invoke-RestMethod -Uri $uploadEndpoint -Method Post -ContentType "multipart/form-data; boundary=`"$boundary`"" -Body $bodyLines -Headers $headers | Out-Null

在调用此命令之前,我使用Write-Host的是一行而不换行,当它完成后,我使用Write-Host的是带有“OK”的换行符,所以输出是这样的:

Uploading version to server... [OK]

我想知道是否有一种方法可以从 获取文件上传的进度,Invoke-RestMethod并且在上传时显示调用的进度百分比。就像是:

Uploading version to server... 43%

标签: powershell

解决方案


我知道有两种方法

  1. Write-Progress -Activity "Uploading version to server..." -PercentComplete $perc
  2. Write-host "`r"Uploading version to server... $perc" -NoNewline

第一种方法生成一个图形加载栏,第二种方法是一个简单的文本行,更像您正在寻找的内容。


推荐阅读