Existe-t-il un outil de ligne de commande intégré sous Windows tel que wget / curl?

40

Je viens de Linux / Unix et je me demandais si Windows avait un binaire capable de télécharger des fichiers depuis la console.

J'aimerais automatiser un certain processus et l'une de mes exigences est de ne pas installer beaucoup de logiciels, mais d'utiliser le plus possible les fonctions intégrées.

Merci!

carlspring
la source
pour être honnête .. wget et curl ne sont pas vraiment des commandes intégrées.
Mike
1
Windows 8.1, octobre 2017 - curl et wget sont tous deux inclus dans PowerShell, comme
indiqué ci
Je n'ai pas assez de crédit pour poster une réponse sur ce site pour le moment, mais la réponse acceptée est incorrecte. En fait, il existe une alternative bitsadmin /transfer myDownloadJob /download /priority normal https://path/to/remote/file.txt c:\path\to\local\file.txt
prête à l'emploi

Réponses:

11

Il n'y a pas de commande wget like intégrée dans Windows. Vous pouvez utiliser le .net Framework via Windows PowerShell comme dans cet exemple:

https://superuser.com/questions/362152/native-alternative-to-wget-in-windows-powershell

ou comme je le fais et utilise wget pour Windows:

http://gnuwin32.sourceforge.net/packages/wget.htm

utilisateur1008764
la source
1
Merci! J'espérais un binaire natif, mais ... c'est quoi le diable - wget c'est! : D
carlspring
La version gnu de wget pour Windows a un bug majeur qui le fait planter lors du téléchargement de fichiers volumineux.
Juan Jiménez
Je n'ai pas assez de crédit pour poster une réponse sur ce site pour le moment, mais la réponse acceptée est incorrecte. En fait, il existe une alternative bitsadmin /transfer myDownloadJob /download /priority normal https://path/to/remote/file.txt c:\path\to\local\file.txt
prête à l'emploi
24

Powershell.

$wc = New-Object System.Net.WebClient
$wc.DownloadFile($source, $dest)

Il existe également Invoke-WebRequest dans PS 3.0.

Ryan Ries
la source
J'espérais vraiment pour une implémentation native du système.
carlspring
5
C'est une partie native du système. Il est livré avec Windows hors de la boîte.
Ryan Ries
13

Si vous avez PowerShell> = 3.0, vous pouvez utiliser Invoke-WebRequest

Invoke-WebRequest -OutFile index.html http://superuser.com

Ou joué au golf

iwr -outf index.html http://superuser.com

Télécharger un fichier via HTTP sous Windows

Steven Penny
la source
1
Je viens de vérifier ... "wget" est un alias intégré pour Invoke-WebRequest. :)
Charles Burge
3
@CharlesBurge, il est supprimé avec PowerShell 6
Steven Penny
7

J'aime l'utilitaire http-ping. Vous pouvez exécuter avec ces paramètres: ping une fois et enregistrer le contenu dans google.html

http-ping.exe -n 1 http://www.google.com/ -f google.html

Il ne nécessite pas d'installation. En savoir plus sur http-ping ici

Mstrumyla
la source