commande If Exist via un serveur internet - Shell/Batch - Programmation
Marsh Posté le 30-12-2006 à 19:30:47
je ne connaisais pas l'existance du goto et de exist en shell/batch
Moi je crois pas que ce que tu demande existe.
Mais l'un des principes des shell/batch etant entre autre d'executer des commandes externes,
peut-etre trouvera-tu le programme ad hoc pour ton système d'exploitation.
Je peux t'en ecrire un
Marsh Posté le 30-12-2006 à 19:31:57
payes a écrit : Bonjour a tous |
Pour ce que j'en connais du MsDos non. Tu peux faire ça en C avec les sockets ou dans des langages plus récents et adaptés au monde du net comme Python...
Marsh Posté le 30-12-2006 à 19:41:24
aie ... oki oki merci pour l'info Sve@r
merci a toi jovalise , mais je dois lancer mon programme sur des machines distantes , et je peux pas installer un ad hoc sur chaque machine , mais merci beaucoup quand meme
bonne soirée a vous deux , merci encore
Marsh Posté le 31-12-2006 à 08:59:57
Les commandes d'origine du batch ne permettent pas ce que tu veux faire. Mais en téléchargeant un petit exécutable wget.exe ici :
http://users.ugent.be/~bpuype/wget/
tu peux réaliser les tâches souhaitées. Cet exécutable est à placer dans le même dossier que ton script ou dans ton PATH.
wget --help
pour plus d'infos
Marsh Posté le 31-12-2006 à 12:30:24
aie , oki oki , bon ba je vais passer par la alors
merci beaucoup a tous ceux qui m'ont aider
bonne journée a tous et bonne année
Marsh Posté le 31-12-2006 à 14:01:26
C'est re moi
Je dois avouer cet éxécutable est assez simpa
Sauf que ... ( se serait pas marrant sinon ... ) il y a un pb
Je m'explique
J'ai un batch nommé dl.bat avec le srcipt : (sachant que dl.bat et wget.exe sont dans C:\test)
wget -mnp -nd "http://********.fr/test/test.bat"
start C:\test\test.bat
en temps normal ( c a d 10 seconde apres le demarage du pc environ ) tout marche bien , il me dl test.bat , et l'éxécute normalement , mais lorsque que je le place dans C:\....\démarage , ou que je modifie la clé de run pour que dl.bat se lance au demarage du pc , il me dit que la commande wget n'est pas valide ...
J'ai essayé de faire "attendre" avant de lancer la commande ( au cas ou le wget.exe ne se lance qu'apres 5 seconde par exemple ) mais rien n'y fait j ai beau le faire attendre 10 seconde ( au bout de 3 , 4 secondes , dans le gestionnaire des taches je voit le processus wuauclt.exe qui est lancer , ce processus correspond au wget ( enfin je crois , il n'etait pas la avant l'installe )) mais rien n'y fait ...
Si qqun sait pk , je serais heureux de l'ecouter
merci d'avance
bonne journée
Marsh Posté le 31-12-2006 à 14:17:32
Oki, y a deux moyens :
- soit tu modifies le raccourci de dl.bat dans Démarrage pour spécifier le dossier d'exécution = C:\test
- soit plus simple, tu indiques le chemin complet de wget.
Comme il est dans le même dossier que le script, tu peux mettre :
"%~dp0wget.exe"
à la place de wget.exe tout court.
Ou encore, dans ton script :
setlocal
set PATH=%PATH%;%~dp0
wget ....
endlocal
Marsh Posté le 31-12-2006 à 17:09:12
oki , merci de m'aider
J'ai testé et tout marche bien , sauf que ( encore ) même si maintenant il trouve la commande et qu'il l'éxécute , il ne télécharge tjs pas le fichier.
Il me met un joli :
Server file no newer than local file 'test.bat' -- not retrieving.
et ensuite :
Donwloaded : 0 bytues in 0 files
J'ai aucune idée d'ou ca peut venir ... :s
Aurais tu une idée Nglechau plz ?
En tout cas merci bien de me venir en aide
Bonne année a tous et bonne fin de journée
Marsh Posté le 31-12-2006 à 17:58:10
C'est à cause de ton option -m (=--mirror), équivalente de -N -r -l inf --no-remove-listing, où -N (--timestamping) = don't re-retrieve files unless newer than local <=> ne pas télécharger sauf si une version plus récente que celle en local existe
Bonne année !
Marsh Posté le 31-12-2006 à 18:30:54
okai ! cool merci beaucoup
une toute dernière petite precision stp et apres juré je te laisses tranquil
le seul pb c'est qu'il télécharge le programme et il le met dans C:\documents and settings...\
j'ai regardé le wget --help , mais il y a beaucoup de paramètre et j'en aie pas trouvé un clair avec lequel on pourrait spécifier le chemin de destination ( je pige rien a l'anglais , et encore moins l'anglais informatique )
donc voila , si tu pouvais m'éclairer la dessus plz , se serait super sympa de ta part , sinon pas de probleme , merci en tt cas pour toutes ces infos
++
Marsh Posté le 31-12-2006 à 18:49:37
C'est l'option -O qu'il te faut, en donnant le chemin complet (dossier et nom du fichier destinataire)
Exemple :
wget -O "%~dp0test.bat" [mes_autres_options_si_besoin] "mon_url"
Marsh Posté le 02-01-2007 à 12:36:52
okai !!
merci beaucoup a toi Nglechau
tout marche bien
merci encore , bonne journée
Marsh Posté le 02-01-2007 à 13:54:19
Pour info, le processus wuauclt.exe que tu as mentionné plus haut ne correspond pas à wget.exe mais à la maj automatique de Windows (wuauclt = Windows Update Automatic Client)
Marsh Posté le 30-12-2006 à 18:59:41
Bonjour a tous
Apres avoir fait une recherche ( sans trouver ) je m'adresse a vous ^^
Voila , je voudrais savoir s'il existe avec la commande "If exist" , un moyen de l'utiliser pour verifier si un fichier est sur un site internet genre :
If exist "http://monsite/mon-fichier-a-verifier.fr" goto etc
ou alors une autre commande qui puisse soit verifier qu'un fichier est present sur un site , soit une commande pour telecharger le fichier du site a un endroit precis sur le pc
Merci bien d'avance
Bonne soirée