2009-10-23 14:58:03 +0000 2009-10-23 14:58:03 +0000
124
124

È possibile scaricare usando la riga di comando di Windows?

Senza utilizzare utility non standard (Windows incluso), è possibile scaricare usando la riga di comando di Windows?

La versione preferita è Windows XP, ma è interessante sapere anche per le versioni più recenti.

Per chiarire ulteriormente la mia domanda:

  • Deve usare HTTP
  • Il file deve essere salvato
  • Installazione standard pulita di Windows, senza strumenti extra

Quindi, fondamentalmente, dato che tutti urlano Wget _, voglio una semplice funzionalità Wget, senza usare Wget.

Risposte (13)

74
74
74
2011-05-16 09:13:14 +0000

A partire da Windows 7, credo che ci sia un unico metodo che non è stato ancora menzionato che è facile:

Sintassi:

bitsadmin /transfer _job\_name_ /download /priority _priority __URL__ local\path\file_
``` ```
bitsadmin /transfer mydownloadjob /download /priority normal ^ http://example.com/filename.zip C:\Users\_username_\Downloads\filename.zip

Esempio:

BITSAdmin is deprecated and is not guaranteed to be available in future versions of Windows.
Administrative tools for the BITS service are now provided by BITS PowerShell cmdlets.
``` &001 


(Spezzato in due righe separate con `^` per la leggibilità (per evitare lo scorrimento). ) 


**Attenzione:** Come indicato nei commenti, il messaggio di aiuto `bitsadmin` inizia dicendo: 


&001 



... ma un altro commento riferisce che funziona su Windows 8.
40
40
40
2009-10-23 15:27:20 +0000

Windows 7 include PowerShell e non c'è praticamente nulla che non si possa fare con PowerShell. Alternativa nativa al wget in Windows PowerShell?

25
25
25
2014-05-29 02:22:34 +0000

PowerShell (incluso con Windows 8 e incluso con .NET per le versioni precedenti) ha questa capacità. Il comando powershell permette di eseguire comandi PowerShell arbitrari dalla linea di comando o da un file .bat. Pertanto, la seguente linea è quella desiderata:

powershell -command "& { (New-Object Net.WebClient).DownloadFile('http://example.com/', 'c:\somefile') }"
17
17
17
2009-10-23 15:12:44 +0000

Ho trovato un modo per farlo, ma in realtà, basta installare Wget .

Si può usare Internet Explorer da una riga di comando (iexplore.exe) e poi inserire un URL come argomento. Quindi, eseguire:

iexplore.exe http://blah.com/filename.zip

Qualunque sia il file, dovrete specificarlo, non ha bisogno di conferma in anticipo. Ecco, eseguirà automaticamente il download. Quindi sì, è tecnicamente possibile, ma buon Dio lo faccia in modo diverso.

12
12
12
2011-08-08 15:18:28 +0000

Windows Explorer (da non confondere con Internet Explorer) può scaricare file via HTTP. Basta inserire l'URL nella barra degli indirizzi. Oppure dalla riga di comando, per esempio, C:\windows\explorer.exe http://somewhere.com/filename.ext.

Si ottiene il classico prompt File Download. A meno che il file non sia un tipo che Windows Explorer sappia visualizzare in linea, (.html, .jpg, .gif), nel qual caso sarebbe necessario fare clic con il tasto destro del mouse per salvarlo.

Ho appena testato questo sulla mia immagine VMware di un'installazione vergine di Windows XP 2002 SP1, e funziona bene.

7
7
7
2016-05-10 14:10:22 +0000

Si può usare (in un pipistrello standard di Windows):

powershell -command "& { iwr http://www.it1.net/it1_logo2.jpg -OutFile logo.jpg }"

Sembra che richieda PowerShell v4…

(Grazie a quel commento e questo )

6
6
6
2009-10-23 15:01:06 +0000

Utilizzare FTP.

Dalla riga di comando:

ftp ftp.somesite.com
user
password

ecc. FTP è incluso in ogni versione di Windows che mi ricordo; probabilmente non nella 3.1, forse non nella 3.1, forse non nella Windows 95 , ma certamente tutto quello che c'è dopo.

@RM: Sarà dura se non volete scaricare altri strumenti. Esiste una riga di comando Wget per Windows e Wget è progettata per fare esattamente quello che si chiede.

4
4
4
2013-04-21 21:55:08 +0000

Utilizzare PowerShell in questo modo:

    1. Creare un file download.ps1:
  1. Ora è possibile scaricare un file come questo:

1
1
1
2009-10-23 15:01:33 +0000

Se si installa Telnet, immagino che si possa fare una richiesta HTTP ad un server per scaricare un file.

Si può anche installare Cygwin , e usare wget per scaricare un file. Questo è un modo molto semplice per scaricare i file dalla linea di comando.

1
1
1
2017-12-16 21:25:25 +0000

Il file può essere scaricato tramite il seguente metodo

bitsadmin /transfer wcb /priority high https://sustainabledevelopment.un.org/content/documents/Agenda21.pdf C:\Program Files (x86)\Dell Update\Agenda21.pdf

1
1
1
2011-08-20 03:22:58 +0000

Ci sono alcuni modi che si possono scaricare usando la riga di comando in Windows:

  1. È possibile utilizzare Cygwin .

    1. Utilizzando telnet è possibile fare una richiesta ma non si vedrà alcuna elaborazione.
    1. Si possono scrivere script bat o VBS.
    1. Scrivete il vostro programma che potete eseguire da cmd.exe.
0
0
0
2014-08-29 23:15:15 +0000

Se avete installato python ecco un esempio che recupera il get-pip.py dal web

python -c "import urllib; urllib.urlretrieve ('https://bootstrap.pypa.io/get-pip.py', r'C:\python27\Tools\get-pip.py')"
0
0
0
2009-10-23 15:04:59 +0000

In Windows, di default, non è possibile scaricare via HTTP. Windows è un sistema operativo incentrato sull'interfaccia grafica, quindi manca di molti degli strumenti a riga di comando che si trovano in altri sistemi operativi, come wget, che sarebbe il candidato principale.

System.Net.WebClient.DownloadFile(), una funzione dell'API WiniNet, può scaricare i file, ma non sono sicuro di quanto si stia andando avanti nello sviluppo vero e proprio rispetto a un file batch.