我正在使用Write-Progress cmdlet在WinPE上的powershell(v5.0)命令窗口中执行diskpart时显示进度条。
$HDDDisk=0
$commands=@()
$commands+="select disk " + 0
$commands+="clean"$commands | out-string | diskpart | Where-Object { $_.Length -gt 0 } | `
Foreach-Object { Write-Progress -Activity "Disk $HDDDisk" -Status $_ -Id 1}
Write-Progress -Activity "Disk $HDDDisk" -Status "Complete" -Completed
完成diskpart后,我使用Expand-WindowsImage cmdlet恢复Windows映像。 Expand-WindowsImage还使用write-progress来报告进度。
我遇到的问题是无法正确清理diskpart进程中的信息,并且在运行Expand-WindowsImage时显示信息显示为(重新输入),这非常令人困惑。
Disk 0
DISKPART>
Operation
Running
[oooo
如何在启动Expand-WindowsImage cmdlet之前清理/删除diskpart写入进度信息?
由于
斯图尔特
答案 0 :(得分:0)
您可以使用-currentOperation OuterLoop/InnerLoop
分隔两个进度条。
像:
Foreach-Object { Write-Progress -Activity "Disk $HDDDisk" -Status $_ -Id 1 -currentOperation InnerLoop}
Write-Progress -Activity "Disk $HDDDisk" -Status "Complete" -Completed -currentOperation OuterLoop