Czy w systemie Windows jest wbudowane narzędzie wiersza polecenia, takie jak wget / curl?

40

Pochodzę z systemu Linux / Unix i zastanawiałem się, czy system Windows ma plik binarny, który może pobierać pliki z konsoli.

Chciałbym zautomatyzować pewien proces i jednym z moich wymagań, aby nie instalować dużo oprogramowania, ale jak najwięcej korzystać z wbudowanych funkcji.

Dzięki!

carlspring
źródło
szczerze mówiąc ... wget i curl nie są tak naprawdę wbudowanymi poleceniami.
Mike
1
Windows 8.1, październik 2017 r. - curl i wget są zawarte w PowerShell, jak to pokazuje: stackoverflow.com/questions/33364752/…
SDsolar
Nie mam jeszcze wystarczających środków, aby opublikować odpowiedź na tej stronie, ale zaakceptowana odpowiedź jest nieprawidłowa. W rzeczywistości istnieje bitsadmin /transfer myDownloadJob /download /priority normal https://path/to/remote/file.txt c:\path\to\local\file.txt
gotowa

Odpowiedzi:

11

W systemie Windows nie ma wbudowanego polecenia wget. Możesz korzystać z .NET Framework za pomocą Windows PowerShell, jak w tym przykładzie:

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

lub jak robię i używam wget dla Windows:

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

użytkownik1008764
źródło
1
Dzięki! Miałem nadzieję na natywny plik binarny, ale ... do diabła - wget! : D
carlspring
Wersja GNU wget dla Windows ma poważny błąd, który powoduje awarię podczas pobierania dużych plików.
Juan Jimenez
Nie mam jeszcze wystarczających środków, aby opublikować odpowiedź na tej stronie, ale zaakceptowana odpowiedź jest nieprawidłowa. W rzeczywistości istnieje bitsadmin /transfer myDownloadJob /download /priority normal https://path/to/remote/file.txt c:\path\to\local\file.txt
gotowa
24

PowerShell.

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

W PS 3.0 jest także Invoke-WebRequest.

Ryan Ries
źródło
Naprawdę liczyłem na natywną część implementacyjną systemu.
Carlspring
5
Jest to natywna część systemu. Jest dostarczany z systemem Windows po wyjęciu z pudełka.
Ryan Ries
13

Jeśli masz PowerShell> = 3.0, możesz użyć Invoke-WebRequest

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

Lub grał w golfa

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

Pobierz plik przez HTTP w Windows

Steven Penny
źródło
1
Właśnie sprawdziłem ... „wget” jest wbudowanym aliasem dla Invoke-WebRequest. :)
Charles Burge,
3
@CharlesBurge jest usuwany za pomocą PowerShell 6
Steven Penny
7

Lubię narzędzie http-ping. Możesz uruchomić z tymi ustawieniami: ping raz i zapisz zawartość na google.html

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

Nie wymaga instalacji. Dowiedz się więcej o http-ping tutaj

mstrumyla
źródło