我有一段 PS 代码,它获取 7-Zip 提取输出并将其过滤下来,以便仅打印百分比“%”进度更新行。我已经设法将其减少到仅百分比输出:
& $7ZipPath "x" $filePath "-o$extractionPath" "-aos" "-bsp1" | out-string -stream | Select-String -Pattern "\d{1,3}%" -AllMatches | ForEach-Object { $_.Matches.Value } | Write-Host -NoNewLine
Run Code Online (Sandbox Code Playgroud)
目前控制台输出如下所示:
0%1%5%9%14%17%20%23%26%31%37%43%46%48%50%52%54%56%59%61%63%65%67%70%72%74%76%78%80%81%82%83%85%86%87%89%90%91%92%94%95%96%97%98%99%
有没有办法将这些输出保持在同一行的同一位置,使它们相互覆盖?这很棘手,因为输出是从 7-Zip 应用程序通过管道传输的。恐怕我无法使用,Expand-Archive因为我正在处理.7z文件
非常感谢!