Mostra o status ao instalar o Anaconda com o Powershell

0

Ao instalar o Anaconda com o Powershell:

Download.

Invoke-WebRequest https://repo.anaconda.com/archive/Anaconda3-5.3.0-Windows-x86_64.exe -OutFile "Anaconda3-5.3.0-Windows-x86_64.exe"

Quando executo o código abaixo, o processo demora muito e não consigo ver nenhum progresso.

Start-Process -Wait -FilePath Anaconda3-5.3.0-Windows-x86_64.exe -PassThru -ArgumentList "/InstallationType=JustMe /AddToPath=1 /RegisterPython=0 /S /D=$env:UserProfile\Anaconda3"

Saída:

Handles  NPM(K)    PM(K)      WS(K)     CPU(s)     Id  SI ProcessName

-------  ------    -----      -----     ------     --  -- -----------

     34       3      812       2096       0.02  11828   0 Anaconda3-5.3.0-Windows-x86_64

Existe uma maneira de mostrar o progresso no Powershell?

    
por Clay 08.10.2018 / 21:39

1 resposta

1

Observação: na maioria dos casos, fazer isso com um exe externo não é coisa do PS nativamente.

Veja uma discussão semelhante aqui: link

Tudo o que foi dito. No PS wget é apenas um alias, não o verdadeiro wget.

Get-Alias -Definition Invoke-WebRequest | Format-Table -AutoSize

CommandType Name                      Version Source
----------- ----                      ------- ------
Alias       curl -> Invoke-WebRequest               
Alias       iwr -> Invoke-WebRequest                
Alias       wget -> Invoke-WebRequest  

# get function / cmdlet details
(Get-Command -Name Invoke-WebRequest).Parameters
Get-help -Name Invoke-WebRequest -Examples
Get-help -Name Invoke-WebRequest -Full
Get-help -Name Invoke-WebRequest -Online  

Se você estiver usando o wget real, terá que qualificar totalmente o caminho para ele PathTo \ wget.exe.

Para mostrar as barras de progresso, use o cmdlet Write-Progress.

# get function / cmdlet details
(Get-Command -Name Write-Progress).Parameters
Get-help -Name Write-Progress -Examples
Get-help -Name Write-Progress -Full
Get-help -Name Write-Progress -Online

See: https://technet.microsoft.com/en-us/library/Ff730943.aspx

And this: https://technet.microsoft.com/en-us/magazine/2008.03.powershell.aspx

An Example of Using Write-Progress in a Long Running SharePoint PowerShell Script

https://social.technet.microsoft.com/wiki/contents/articles/18697.an-example-of-using-write-progress-in-a-long-running-sharepoint-powershell-script.aspx

No entanto, para usá-lo para o que você procura, você precisa de uma maneira de determinar a matemática do que a barra de progresso usará, como você verá nos artigos acima.

Ou, você pode codificar uma mensagem simples em um loop, olhar o local do download para ver se o arquivo está lá ou se o processo de instalação estiver concluído e, em seguida, sair do loop.

    
por 09.10.2018 / 00:01