Script Batch téléchargement http - Shell/Batch - Programmation
Marsh Posté le 17-10-2009 à 20:31:08
anglais :s ok merci, je vais voir...
si quelqu'un à un script batch, je suis toujours preneur... moi et l'anglais font deux
Marsh Posté le 17-10-2009 à 20:56:11
Code :
|
Marsh Posté le 17-10-2009 à 21:11:00
oui facile.... j'ai tout compris
logo.gif > facile mais quand le nom est fichier-503-i386 et qu'il est modifié toutes les semaines ?
Marsh Posté le 17-10-2009 à 21:15:06
l'hypothèse c'est que dans ton système de fichiers tu as "monfichier-503-i386-CD-1.iso", et seulement si "monfichier-504-i386-CD-1.iso" existe sur le serveur alors tu le télécharges, après avoir supprimé "monfichier-503-i386-CD-1.iso", et ainsi de suite ?
Marsh Posté le 17-10-2009 à 22:13:11
Vaguement testé mais ça pourrait faire l'affaire
Code :
|
je suppose dans cette proposition, que le batch se trouve dans le même répertoire que ton unique fichier initial "monfichier-(n)-i386-CD-1.iso", et qu'"URL" représente le répertoire racine de ton serveur, où se trouve éventuellement "monfichier-(n+1)-i386-CD-1.iso"
Marsh Posté le 17-10-2009 à 22:29:10
je croyais qu'on s'était compris pourtant http://forum.hardware.fr/hfr/Progr [...] m#t1932792
ta réponse à à 22:02:03 m'a laissé comprendre que tu comparais la version d'un fichier sur ton ordi avec la version d'un fichier sur le serveur (http), ceci dit par rapport à l'énoncé ça sème un peu le doute
Marsh Posté le 17-10-2009 à 22:34:19
je reprend car ta réponse de 22h13 m'a mis un doute ^^
Actuellement j'ai le fichier stocké sur le DD que je met à jour manuellement pour le moment à partir d'un lien http donc avant de faire la MAJ, je le supprime puis je télécharge.... C'est mieux ?
Marsh Posté le 17-10-2009 à 22:44:43
ben si c'est ça la commande précédente devrait fonctionner. Explications :
Code :
|
admettons que dans le répertoire courant tu as un seul fichier "monfichier-???-i386-CD-1.iso", par exemple monfichier-503-i386-CD-1.iso : la commande ci-dessus affecte à la variable Numero la valeur 503 augmentée de 1, càd 504
Code :
|
==> cURL teste maintenant, sur le site web, si le fichier URL/monfichier-%Numero%-i386-CD-1.iso, càd monfichier-504-i386-CD-1.iso existe. Si c'est bien le cas :
Code :
|
==> le fichier monfichier-503-i386-CD-1.iso dans le répertoire courant est supprimé (d'ailleurs attention, écrit comme ça, tout fichier de la forme monfichier-???-i386-CD-1.iso sera supprimé)
Code :
|
==> le fichier URL/monfichier-504-i386-CD-1.iso est téléchargé
"URL" est bien entendu une adresse de type Http, par exemple : http://mon.site.web/monfichier-504-i386-CD-1.iso
Marsh Posté le 17-10-2009 à 22:48:16
oki merci, je te dirais si cela fonctionne
Petite question : je dois l'enregistrer sous quel format ? .bat ?
car il sera exécuté via les tâches planifiées....
Marsh Posté le 17-10-2009 à 22:54:17
oui, .bat et il te faut cURL soit dans un des chemins du Path, soit dans le même répertoire. J'insiste sur les conditions, dans ce répertoire, il faut également le dernier fichier "monfichier-???-i386-CD-1.iso" car c'est à partir de lui que la recherche de la version suivante va se faire. Si la recherche sur le serveur est positive, le précédent sur ton dd sera définitivement supprimé, sans retour arrière possible (si tu ne le souhaites pas tu peux utilser la commande MOVE au lieu de DEL, histoire de le déplacer)
Marsh Posté le 20-10-2009 à 12:02:18
impeccable
est t'il possible de vérifier par la taille ? ou le hash md5 ?
Marsh Posté le 20-10-2009 à 12:27:43
MD5 je ne sais pas, pour la taille voici une possibilité
Code :
|
Code :
|
Marsh Posté le 20-10-2009 à 20:34:03
Je n'obtiens pas la taille du fichier .iso en faisant Curl -sfI....
Marsh Posté le 20-10-2009 à 20:37:20
ReplyMarsh Posté le 20-10-2009 à 20:46:09
eZula a écrit : Ben ça te donne quoi
|
Code :
|
Marsh Posté le 20-10-2009 à 21:03:47
Apparemment l'info n'est pas toujours transmise en amont et la seule solution serait de voir si tu peux faire qquechose au niveau du serveur http://curl.haxx.se/mail/archive-2002-08/0059.html en tout cas avec cURL.
Bon, le mail est un peu ancien, mais là j'avoue que ça dépasse mes compétences.
Marsh Posté le 17-10-2009 à 15:21:13
Bonjour all,
quelqu'un pourrais me faire un petit script batch pour télécharger deux fichiers via http :
en vérifiant le nom,
si le nom est identique alors on annule le téléchargement,
si le nom est différent (chiffre supérieur) alors on supprime l'ancien et on télécharge le fichier.
Les noms des fichiers sont noté monfichier-503-i386-CD-1.iso, monfichier-504-i386-CD-1.iso etc....
Merci d'avance.