Como baixar arquivos pela linha de comando http?

9

Preciso fazer o download de um arquivo através de http a partir da linha de comando em um servidor Windows 2008. Estou procurando algo como o wget , mas deve ser uma ferramenta interna.

Existe tal ferramenta?

steenhulthin
fonte
O PowerShell é uma ferramenta interna para você?
mailq
Sim, o PowerShell está ok.
steenhulthin

Respostas:

17

Se você possui o PowerShell instalado ...

(New-Object System.Net.WebClient).DownloadFile("http://icanhazip.com/","icanhazip.txt")
Kanji
fonte
2
Nota para aqueles que não estão familiarizados com esta chamada. O primeiro argumento é o arquivo para download, o segundo é o que salvá-lo localmente.
John John
3
Por alguma razão isso não iria funcionar para mim até que eu incluído o caminho em que para salvá-lo localmente:(New-Object System.Net.WebClient).DownloadFile("http://download.microsoft.com/download/8/C/5/8C5EEDC7-3D72-4BB6-A55E-37F3977CD892/wpilauncher.exe","C:\wpilauncher.exe")
Chris Magnuson
Trabalhar com SSH é um problema, pois o PowerShell não inicia interativamente dentro do mesmo terminal. Eu tive que correr powershell "your command with quotes escaped by a backslash"para fazê-lo funcionar.
Akostadinov
0

Nenhum equivalente do wget embutido / padrão no Windows.

user48838
fonte
0

Eu gostaria de usar a maneira do PowerShell, no entanto, quando usado em algumas páginas, como aquelas com código SSL errôneo (autoassinado ou outro), você precisa definir as expectativas primeiro antes da chamada

[Net.ServicePointManager]::ServerCertificateValidationCallback = {$true}
$wc = New-Object System.Net.WebClient

$wc.DownloadFile ( "https://thesite.com/myPage", "LocalFileName.htm" )

Por sua vez, isso também falhará, se ele redirecionar para muitas vezes, por exemplo, f.ex. se precisar de cookies para guardar etc etc ...

Infelizmente, sem escrever um pequeno executável sozinho, não parece haver algo além do wget que realmente possa lidar com todas as situações até agora ... adoraria estar errado.

Johan A
fonte
Se você precisar de cookies, provavelmente está quebrando o ToS baixando-o via CLI de qualquer maneira.
precisa saber é o seguinte