Automatique d'upload FTP avec Windows
21 maggio 2008, 0:38 Trucs et astuces , des sous Windows 21 mai 2008, 12:38
Aujourd'hui j'ai eu à programmer le téléchargement automatique d'un fichier dans Windows XP Professionnel.
C'était comme toujours un très instructif: après tout, en prenant les tours les plus divers, vous pouvez également obtenir à partir de Windows est quelque chose de vaguement semblable au comportement de `cron` sur des serveurs Linux.
Seulement vaguement, je ne veux pas tromper tout le monde.
Mais vous pouvez faire.
Voici comment.
Supposons que vous ayez à passer toutes les heures une copie de le fichier test.txt les serveurs FTP suivants:
Hôte: FTP.ESEMPIO.NET
utilisateur: USER
pass: QWERTY
Destination: / MIA / FOLDER /
Nous avons d'abord créer un script batch qui peut ouvrir une connexion FTP, déplacez le fichier et puis fermez la connexion elle-même.
Voici le script que j'ai créé et enregistré dans le fichier UPLOADME.BAT:
@echo off
echo user UTENTE> ftpcomm.dat
echo QWERTY>> ftpcomm.dat
echo bin>> ftpcomm.dat
echo cd /MIA/CARTELLA/>>ftpcmd.dat
echo put %1>> ftpcomm.dat
echo quit>> ftpcomm.dat
ftp -n -s:ftpcomm.dat FTP.ESEMPIO.NET
del ftpcomm.dat
Simple et direct. Depuis la publication en ligne de commande le fichier test.txt est obtenu en tapant simplement:
uploadme "C:\Documents and Settings\Ivan Agliardi\Documenti\PROVA.TXT"
Il est maintenant - absurde - la partie la plus délicate. Windows ne possède pas de véritable système cron, nous devons donc recourir à des tâches planifiées infâmes (alias le Planificateur de tâches).
Je cite un extrait http://support.microsoft.com/kb/308569/it :
Pour ouvrir Tâches planifiées, cliquez sur le bouton Démarrer, pointez sur Tous les programmes, Accessoires, Outils système, puis cliquez sur Tâches planifiées.
Pour planifier une nouvelle tâche:
| 1. | Double-cliquez sur Ajouter une tâche planifiée pour démarrer l'Assistant Tâche planifiée, cliquez sur Suivant sur la première boîte de dialogue. | ||||||||||||
| 2. |
Dans la boîte de dialogue suivante affiche une liste des programmes installés sur votre ordinateur dans le cadre du système d'exploitation Windows XP ou à la suite de l'installation du logiciel. Utilisez l'une des méthodes suivantes:
| ||||||||||||
| 3. |
Tapez un nom pour l'opération et choisissez parmi les options suivantes:
| ||||||||||||
| 4. |
Cliquez sur Suivant, spécifiez les informations de temps et le jour pour exécuter l'opération, puis cliquez sur Suivant. Information concernant la date et l'heure de l'exécution de l'opération dépendra de la sélection faite dans la boîte de dialogue précédente de l'Assistant. Par exemple, si vous sélectionnez l'option hebdomadaire, vous devez indiquer le jour de la semaine, le temps, et si l'opération doit être effectuée chaque semaine, toutes les deux semaines, toutes les trois semaines et ainsi de suite. | ||||||||||||
| 5. | Tapez le nom d'utilisateur et mot de passe associé à l'opération. Assurez-vous que vous sélectionnez un utilisateur possède les autorisations suffisantes pour exécuter le programme. Par défaut, l'Assistant sélectionne le nom de l'utilisateur actuel qui est connecté. | ||||||||||||
| 6. | Cliquez sur Suivant, puis cliquez sur Terminer après avoir vérifié vos sélections. |
Fin de citation ... Maintenant, le problème un peu "plus grave est que l'interface du Planificateur de tâches n'offre pas grand choix en ce qui concerne le calendrier: si je veux exécuter le script toutes les heures je d'abord créer une tâche planifiée avec l'un des timings disponibles, puis le modifier en allant dans les options avancées.
Qu'est-ce qu'il ya à exécuter une rencontre avancée toutes les 7 minutes - par exemple - au lieu d'une fois par jour, il est clair pour moi. Je ne suis pas clair, cependant, que les options avancées permettez-moi de régler le fonctionnement auto-répétition toutes les n minutes, l'obtention, en fait une forme précoce de `cron`.















27 novembre 2008 à 13:11
Bonjour! Comment puis-je télécharger sur mon serveur automatiquement un dossier entier (avec tout son contenu, je ne sais pas a priori) périodiquement automatiquement?
Bonjour et Merci!
27 novembre 2008 à 15:19
Bonjour kumo,
Je pense que dans mes instructions il ya pratiquement tout ce dont vous avez besoin. Quel est le point que vous ne comprenez pas? Faites-moi savoir: je donne un coup de main prêts.
Bonjour
Ivan
27 novembre 2008 à 18:03
Bonjour! Je ne peux pas télécharger le dossier! Avec aucune de ces tentatives:
C: \ Documents and Settings \ FedeCri \ Desktop> uploadme C: \ Avatar
C: \ Documents and Settings \ FedeCri \ Desktop> uploadme C: \ Avatar \
C: \ Documents and Settings \ FedeCri \ Desktop> uploadme C: \ Avatar \ *.
Il retourne "AVATAR fichier d'erreur d'ouverture" ... c'est comme si les caractères génériques ne fonctionnent pas ...
2 décembre 2008 à 10:58
Ivan? Pourriez-vous m'aider x fav?
2 décembre 2008 à 12:00
Kumo Bonjour! Et pourtant, j'ai oublié de vous, que je ne savais pas
Je pense que la solution à votre problème est simple: Remplacer l'éducation qui est mis à 6 à la ligne du lot que j'ai publié dans mon post avec le mput déclaration. Voici le script final:
@echo offecho user UTENTE> ftpcomm.dat
echo QWERTY>> ftpcomm.dat
echo bin>> ftpcomm.dat
echo cd /MIA/CARTELLA/>>ftpcmd.dat
echo mput %1>> ftpcomm.dat
echo quit>> ftpcomm.dat
ftp -n -s:ftpcomm.dat http://FTP.ESEMPIO.NET
del ftpcomm.dat
Okkio, je n'ai pas essayé parce que je n'ai pas le temps en ce moment, mais il devrait fonctionner ... Permettez-moi comment ça s'est passé de toute façon, OK?
Ivan Agliardi
2 décembre 2008 à 16:49
Merci resp, Ivan, mais la situation s'est aggravée au cours ... de ne pas télécharger un dossier entier, maintenant je ne facturons pas même un seul fichier ... je suis bloqué à ce point:
ftp> bin200 TYPE is now 8-bit binary
ftp> mput stewie.jpg
mput stewie.jpg? quit
ftp>
2 décembre 2008 à 17:00
Intéressant ... pourrait-il que le mode FTP rapide de la ligne de commande de Windows est activée par défaut avec mput.
Je n'ai toujours pas avoir accès à une machine Windows pour faire ce test, puis je vous donne droit, vous essayez, et si je confirme ça marche ... ok? Si l'on regarde ne fonctionne tout simplement pas ... J'ai donc deux minutes, essayez ceci:
@echo offecho user UTENTE> ftpcomm.dat
echo QWERTY>> ftpcomm.dat
echo bin>> ftpcomm.dat
echo cd /MIA/CARTELLA/>>ftpcmd.dat
echo prompt>> ftpcomm.dat
echo mput %1>> ftpcomm.dat
echo quit>> ftpcomm.dat
ftp -n -s:ftpcomm.dat http://FTP.ESEMPIO.NET
del ftpcomm.dat
Explication: j'ai ajouté la déclaration, invite qui offre hors invite interactive (ligne 6). Essayez-le et laissez-moi savoir.
J'attends dans l'expectative
Ivan Agliardi
2 décembre 2008 à 19:30
Je vous remercie! Il fonctionne!
Une dernière question si '
Comment puis-je mettre le code dans le dossier que vous voulez charger sans avoir à changer à partir de DOS comme un paramètre?
Fondamentalement, je veux les parties du programme de petits cliquant simplement 2 fois 
3 décembre 2008 à 8:27
Si je comprends bien, vous voulez que ce script simple comprend chemin direct de l'annuaire pour être déplacé via FTP et ne nécessite pas comme un argument. Eh bien, une chose est assez simple:
@echo offecho user UTENTE> ftpcomm.dat
echo QWERTY>> ftpcomm.dat
echo bin>> ftpcomm.dat
echo cd /MIA/CARTELLA/>>ftpcmd.dat
echo prompt>> ftpcomm.dat
echo mput C:\avatar >> ftpcomm.dat
echo quit>> ftpcomm.dat
ftp -n -s:ftpcomm.dat http://FTP.ESEMPIO.NET
del ftpcomm.dat
Si cela ne fonctionne pas (je me souviens que j'ai toujours utiliser uniquement Linux et aussi sur l'ordinateur portable à partir de laquelle j'écris ces lignes) va essayer de remplacer les
echo mput C:\avatar >> ftpcomm.datavec
echo mput C:\avatar\* >> ftpcomm.datFaites-moi savoir
Ivan Agliardi
11 décembre 2008 à 12:11
Perfectionnez Merci! Mais parce que je ne vois pas les caractères génériques? Par exemple:
echo mput "C :/ AVAT * / new / *. gif" >> ftpcomm.dat renvoie l'erreur parce que je ne peut pas trouver l'avatar dossier!
11 décembre 2008 à 1:20
Kumo Bonjour, s'il vous plaît aider ftp sous DOS
Ivan
11 décembre 2008 à 14:39
Devrais-je transférer doit passer de binaire à des transferts ascii? encore la fin "*. gif" pas de problèmes! Pourquoi j'ai des problèmes seulement avec l'abréviation du dossier?
12 décembre 2008 à 20:14
Bonjour Kumo
Moi aussi j'ai le même problème ... vous avez résolu?
Avec 1000
Salutations
7 juillet 2009 à 11:53
tout est beau, seulement qu'il ya un petit problème mais non le moindre, si vous utilisez ce script et vous avez un problème de connexion des données sur le site ftp peut obtenir incorrecte car il n'existe pas de données apparaît entre le local et à distance et voici un petit point de non-FTP fiable, vous avez une solution?
7 juillet 2009 à 12:57
Bonjour Daniel,
le poste auquel vous faites allusion est la seule réponse publique à une demande que j'avais reçu, qui prévoit expressément demander l'utilisation du protocole FTP. Comme vous le mentionnez dans les limites qui sont celles du bon de parler du protocole FTP, qui ne pas apparaître dans le fichier source et de destination, même si dans la plupart des scénarios, le problème de connexion possible est détectée et le transfert échoue, tout dépend du système d'exploitation et / ou le logiciel qui gère l'opération. Une autre solution consiste sans doute à utiliser un logiciel comme rsync sous windows. Trouver un tutoriel pour faire une solution simple en utilisant rsync à cette adresse: http://www.fabriziosinopoli.it/2008/02/18/backup-con-rsync-in-windows/
Amusez-vous!