Je veux un moyen de télécharger un fichier via HTTP étant donné son URL (similaire au fonctionnement de wget). J'ai vu les réponses à cette question , mais j'ai deux changements aux exigences:
- Je voudrais qu'il fonctionne sur Windows 7 ou une version ultérieure (bien que si cela fonctionne sur Windows XP, c'est un bonus).
- Je dois pouvoir le faire sur une machine de stock avec rien d'autre que le script, qui devrait être du texte qui pourrait être facilement entré sur un clavier ou copié / collé.
- Plus c'est court, mieux c'est.
Donc, essentiellement, je voudrais un script .cmd (batch), VBScript ou PowerShell qui puisse effectuer le téléchargement. Il pourrait utiliser COM ou appeler Internet Explorer, mais il doit fonctionner sans aucune entrée et devrait se comporter correctement lorsqu'il est appelé sans affichage (par exemple via une session Telnet ).
windows-7
command-line
download
http
Jason R. Coombs
la source
la source
Réponses:
Si vous avez PowerShell> = 3.0, vous pouvez utiliser Invoke-WebRequest :
Ou joué au golf:
la source
powershell -command "iwr -outf su.htm superuser.com"
J'utiliserais BITS ( apprêt ):
À partir de Windows 7, Microsoft conseille d'utiliser les applets de commande PowerShell pour BITS.
Vous pouvez également utiliser BITS via COM , voir ici pour un exemple de VBScript . Et il y a ' bitsadmin ', un outil en ligne de commande pour contrôler les téléchargements:
Dans Windows 7
bitsadmin.exe
déclare lui-même qu'il s'agit d'un outil obsolète. Cependant:la source
Essayez la classe Web Client . Il y a un exemple de script PowerShell au bas de cette page:
la source
Copiez et collez les six lignes suivantes (ou simplement les quatre dernières lignes) dans un fichier texte. Renommez-le ensuite en
vget.vbs
.Évidemment, vous devez personnaliser trois choses dans ce script pour le faire fonctionner pour vous.
vget.vbs
, si c'est ainsi que vous l'appeliez.FILE.TXT
lequel vous souhaitez que la sortie soit dirigée par une ligne de commande par lots DOS .J'ai seulement essayé de l'utiliser pour télécharger un fichier texte ASCII brut (un script cmd plus puissant) à partir de mon compte Dropbox , donc je ne sais pas si cela fonctionnera pour les fichiers EXE, etc .; ou d'autres serveurs Web.
Si vous vous dispensez des deux premières lignes de commentaire, elles ne font que quatre lignes. Si vous connaissez VBScript, vous pourriez même être en mesure de transporter ce code dans votre tête et de le saisir dans la ligne de commande si nécessaire. Il ne contient que cinq éléments de commande clés:
CreateObject
,.Open
,.Send
,WScript.Echo
et.responseText
.la source
Voici ma tentative de reprendre les façons de télécharger des fichiers sur Windows sans utiliser d'outils externes.
Il comprend BITSADMIN, Microsoft.XmlHTTP et WinHTTP avec un script batch / JScript hybride qui n'a pas besoin de fichiers temporaires, et System.Net.WebClinet avec jscript.net hybride auto-compilé.
la source