Chcę sposób pobrać plik przez HTTP, biorąc pod uwagę jego adres URL (podobny do działania wget). Widziałem odpowiedzi na to pytanie , ale mam dwie zmiany w wymaganiach:
- Chciałbym, aby działał w systemie Windows 7 lub nowszym (choć jeśli działa w systemie Windows XP, to bonus).
- Muszę być w stanie to zrobić na standardowej maszynie, używając tylko skryptu, który powinien być tekstem, który można łatwo wprowadzić na klawiaturze lub skopiować / wkleić.
- Im krótszy, tym lepiej.
Zasadniczo chciałbym skrypt .cmd (wsadowy), VBScript lub PowerShell, który może wykonać pobieranie. Może używać COM lub wywoływać Internet Explorera, ale musi działać bez żadnych danych wejściowych i powinien zachowywać się dobrze, gdy zostanie wywołany bez wyświetlania (na przykład przez sesję Telnet ).
windows-7
command-line
download
http
Jason R. Coombs
źródło
źródło
Odpowiedzi:
Jeśli masz PowerShell> = 3.0, możesz użyć Invoke-WebRequest :
Lub grał w golfa:
źródło
powershell -command "iwr -outf su.htm superuser.com"
Chciałbym użyć BITS ( podkład ):
Począwszy od systemu Windows 7, Microsoft zaleca używanie poleceń cmdlet programu PowerShell dla usługi BITS.
Możesz także użyć BITS przez COM , patrz tutaj na przykład VBScript . Jest też „ bitsadmin ”, narzędzie wiersza poleceń do kontroli pobierania:
W systemie Windows 7
bitsadmin.exe
stwierdza się, że jest to przestarzałe narzędzie. Niemniej jednak:źródło
Wypróbuj klasę klienta WWW . Na dole tej strony znajduje się przykładowy skrypt PowerShell :
źródło
Skopiuj i wklej następujące sześć wierszy (lub tylko ostatnie cztery wiersze) do pliku tekstowego. Następnie zmień nazwę na
vget.vbs
.Oczywiście musisz dostosować trzy elementy w tym skrypcie, aby działał dla Ciebie.
vget.vbs
, jeśli tak go nazwałeś.FILE.TXT
, na którą chcesz skierować dane wyjściowe za pomocą wiersza poleceń wsadowego DOS .Próbowałem tego użyć tylko do pobrania surowego pliku tekstowego ASCII (mocniejszego skryptu cmd) z mojego konta Dropbox , więc nie wiem, czy będzie działać dla plików EXE itp .; lub z innych serwerów internetowych.
Jeśli zrezygnujesz z pierwszych dwóch wierszy komentarza, ma on tylko cztery wiersze. Jeśli znasz się na VBScript , być może będziesz w stanie przenosić ten kod w swojej głowie i wpisywać go w wierszu poleceń w razie potrzeby. Zawiera on tylko pięć kluczowych składników polecenie:
CreateObject
,.Open
,.Send
,WScript.Echo
i.responseText
.źródło
Oto moja próba wznowienia sposobów pobierania pliku w systemie Windows bez użycia narzędzi zewnętrznych.
Obejmuje BITSADMIN, Microsoft.XmlHTTP i WinHTTP z hybrydowym skryptem wsadowym / JScript , który nie potrzebuje plików tymczasowych, oraz System.Net.WebClinet z hybrydową kompilacją jscript.net.
źródło