Copie et suppression dossier FTP tout les jours - Shell/Batch - Programmation
Marsh Posté le 04-07-2017 à 10:04:03
Euh mais pourquoi tu nous donnes les coordonnées du serveur avec les identifiants ?
Sinon, oui, tu peux faire un script pour automatiser tes actions. Par contre déjà il faudrait lister PRECISEMENT ce qu'il faut faire. Du genre :
- Se connecter au FTP
- Ouvrir le répertoire bidule
- Copier truc sur X
- Supprimer machin
- Fermer
Etc
Dans tous les cas on pourra t'orienter sur comment faire le script/quels outils correspondent, mais on ne te fera probablement pas le boulot.
Marsh Posté le 04-07-2017 à 18:07:28
Bonjour,
Les identifiants sont bidons.
Se connecter au FTP tout les jours
Ouvrir dossier CAMERA
Ouvrir dossier 192.192.1.1
Couper (ou copier) le dossier / les dossiers et les fichiers se trouvant à l'intérieur
Suprimer les dossiers copier
fermer.
(Eteindre pc ; allumage dans 23h)
Ce qui peut etre une difficulté c'est que le dossier du jour peut etre amené à avoir des nouvelles photos
Ensuite les dossiers changent de nom tout les jours car sont nommé par la date du jour
Exemple :
Dossier : 2017-06-04
Fichier : 2017060422:30 ;
Fichier2 31 ...etc
Demain, il y aura un dossier 2017-06-05 ...etc
Marsh Posté le 04-07-2017 à 19:53:10
Il manque une info importante: Quel système d'exploitation?
Avec cURL p.ex. ça ne doit pas être sorcier, mais faudra essayer toi-même, comme l'indiquait TotalRecall on est pas vraiment là pour faire ton boulot - sachant que tu peux avoir de la chance, pour quelqu'un qui sait faire ça doit être rapide.
Marsh Posté le 04-07-2017 à 20:14:40
moi je suis sur windows xp.
mais apres j'ai un vieux pc qui peut etre formater et sur lequel on peut mettre ce qui vous parrait le plus simple.
Marsh Posté le 05-07-2017 à 10:02:32
ReplyMarsh Posté le 06-07-2017 à 06:50:15
AutoIt ? enregistrerais les mouvements souris clavier et les reproduit c'est bien ça ?
Marsh Posté le 06-07-2017 à 08:56:44
ReplyMarsh Posté le 06-07-2017 à 22:06:11
Bonjour,
Pouvez vous m'aidez pour le scipt ?
Sinon AutoIt, pas réussi. En revanche je suppose du meme principe j'ai trouvé Ghost Mouse.
La problématique je crois pas que la fonction Couper existe sur filezilla.
Donc copier vers PC ok,
Mais, supprimer je dois attendre la fin de copie et ça c'est complétement aléatoire. Et si j’attends trop. De nouveaux clichés arrivent.
Marsh Posté le 06-07-2017 à 23:14:43
Pour le moment
Je viens de tester WinSCP (client FTP) qui a une fonction couper repertoire touche F6
Avec Ghost Mouse j'enregistre la manip.
(Je bloque avec Win SCP pour si dossier présent pour garder en mémoire remplacer (ajouter)
Marsh Posté le 07-07-2017 à 08:26:32
Euh moi j'ai proposé d'utiliser AutoIt, pas AutoIt + une souris + filezilla + winscp + des timers magiques +...
C'était le sens du "pas du tout" plus haut quand tu as parlé de souris.
Traduction : faire un script autoit de quelques lignes qui fasse tout. Ca commence par :
https://www.autoitscript.fr/autoit3 [...] onnect.htm
Je n'ai pas utilisé autoit pour ce genre de pb mais ton truc est plutôt simple et très procédural, pas besoin de savoir programmer.
Marsh Posté le 08-07-2017 à 17:53:42
Bonjour,
Les scripts sont à priori interdit par le service FTP
C'est le fichier que genere ghost mouse est ce que cela peut se tranformer en Bat ou en fichier executable ?
Mouse : 794 : 43 : Move : 0 : 0 : 0
DELAY : 127
Mouse : 794 : 43 : LeftButtonDown : 0 : 0 : 0
DELAY : 95
Mouse : 794 : 42 : Move : 0 : 0 : 0
Mouse : 794 : 43 : LeftButtonUp : 0 : 0 : 0
DELAY : 27
En effet, tout les ghost record que j'ai tester fonctionne a partir du moment ou l'on ouvre le fichier .
Marsh Posté le 09-07-2017 à 20:20:57
Bonjour,
Si tu as installé WinSCP tu peux essayer ce script .bat :
Code :
|
Marsh Posté le 09-07-2017 à 21:47:47
Bonjour,
Avant de parler du script.
Je refait point complet.
Objectif :
Un logiciel (un ordi) se connect à un serveur STP. Copie sur l'ordinateur et supprime le dossier
(au départ je parlais de sous dossier et de faire une trie, mais limite tant pis pour tout ça et les sous dossier; si il prend le dossier racine c'est bon aussi au final)
Ghost recorder et enregistreur de souris.
Je parlais d'enregistrer avec la souris les manips. Le problème pour les logiciels à mon niveau testé est qu' il faut ouvrir le fichier d'enregistrement pour que ghost execute la manip. Pas reussi à ce que le programme s'ouvre seul et exécute tout seul.
Au niveau de WinSCP.
Il y a une fonction qui permet de faire un raccourci au serveur. (on clic ça s’ouvre direct avec la dernière fenêtre)
Il y a une fonction qui permet de copier et supprimer un dossier sélectionner (raccourci F6)
Donc plus qu'a sélectionner le dossier et raccourci clavier F6
Savez vous si il est possible apres ouverture de programmer WinSCP pour sélectionner le dossier et executer F6 ? puis exit ?
kyurakushunsui
Merci pour le script. J'ai un peu honte, mais j'ai pas réussi à faire marcher.
J'ai mis le code dans bloc note et enregistré en BAT (ou peut etre il aurait fallu faire dans WinSCP?)
La console s'ouvre. inscrit " Le transfert FTP va commencer" puis "Transfert FTP = Error"
De plus est ce que le logiciel WinSCP devrait s'ouvrir ?
Les données
Adresse FTP : fab-preview.your-hosting.net |
Pour le dossier à la limite, si il coupe le dossier CAMERA et supprime c'est pas un problème. La camera le re créera apres.
Nota, je ne vois pas comment donner la ligne destination (sur mon ordi) du dossier ? (D:\Savecamera)
--------------------------------------------------------------------
@echo off
Setlocal enableextensions
set server=ftp://fabfab:zerofoiszero@fab-preview.your-hosting.net
set destination=%userprofile%\CAMERA
set software=%ProgramFiles%\WinSCP\WinSCP.exe <<< tu avais mis WinSCP.com j'ai modifié par Exe.
set chemin=/CAMERA/
if not exist "%software%" (exit)
if not exist "%destination%" (mkdir "%destination%" )
cls & echo. & echo ****** Le transfert FTP va commencer ******
echo. & ping -n 5 127.0.0.1 > nul
"%software%" /ini=nul /command "open %server%" "cd %chemin%" "lcd %destination%" "get *" "rm *" "close" "exit"
if %ERRORLEVEL% EQU 0 (cls & echo *** Transfert FTP = Success ***) else (
cls & echo *** Transfert FTP = Error ***
ping -n 5 127.0.0.1 > nul
exit
)
pause
Endlocal
exit
Encore merci pour votre aide.
Marsh Posté le 09-07-2017 à 22:05:47
Il ne faut pas remplacer WinSCP.com c'est fait exprès pour appeler le programme en ligne de commande.
Pour la destination il faut modifier cette ligne : set destination=D:\Savecamera
Enfin il ne faut pas oublier d'indiquer tes vrais identifiants et l'adresse de ton serveur.
Marsh Posté le 09-07-2017 à 22:45:46
Si ça ne marche toujours pas, c'est peut-être parce que ton serveur utilise SSL/TLS, dans ce cas il faudra modifier légèrement la commande WinSCP.com, à toi de me le dire.
Marsh Posté le 10-07-2017 à 12:25:37
Citation : Merci pour le script. J'ai un peu honte, mais j'ai pas réussi à faire marcher. |
==>> c'est bien tu as fait ce qu'il fallait
Citation : De plus est ce que le logiciel WinSCP devrait s'ouvrir ? |
==>> non il ne doit s'ouvrir, juste l'invite de commandes
Marsh Posté le 10-07-2017 à 14:30:25
Bonjour !
Avec WinSCP, il n'est pas nécessaire, comme on le fait en scriptant des commandes standard depuis un shell, de faire :
prompt |
Pour récupérer tous les fichiers ? C'est une vraie question, je n'utilise WinSCP qu'en interface graphique et ne fais des scripts qu'avec le client en ligne de commandes Unix/Linux, mais j'imagine que les commandes à envoyer au serveur sont les mêmes ...
Bonne continuation !
Marsh Posté le 19-12-2017 à 21:46:38
Bonjour,
Pour faire suite, cela marche super bien ton script kyurakushunsui. Alors Super merci
J'aimerais à présent perfectionner un peu le programme.
De plus,
Je remet ci dessous le script cela peut servir à d'autre.
@echo off
Setlocal enableextensions
set server=ftp://fabfab:zerofoiszero@fab-preview.your-hosting.net
set destination=D:\Savecamera
set software=%ProgramFiles%\WinSCP\WinSCP.COM
set chemin=/CAMAV/
if not exist "%software%" (exit)
if not exist "%destination%" (mkdir "%destination%" )
cls & echo. & echo ****** Le transfert FTP va commencer ******
echo. & ping -n 5 127.0.0.1 > nul
"%software%" /ini=nul /command "open %server%" "cd %chemin%" "lcd %destination%" "get *" "rm *" "close" "exit"
if %ERRORLEVEL% EQU 0 (cls & echo *** Transfert FTP = Success ***) else (
cls & echo *** Transfert FTP = Error ***
ping -n 5 127.0.0.1 > nul
exit
)
pause
Endlocal
exit
Marsh Posté le 18-03-2018 à 11:03:50
Petit up
Marsh Posté le 03-07-2017 à 18:04:37
Bonjour,
J'ai une camera qui envoi des images sur un FTP gratuit.
Mon probleme est qu'il sature trés vite.
Donc tout les jours je copie vers mon ordi puis supprime du ftp
Savez vous si il existe un logiciel (ou un mini systeme) qui permettrait de faire cette manip de manière autonome ?
De mes recherches j'ai trouvé des personnes qui parle de faire un scipt. mais ça me semble complexe Pourriez vous m'aider ?
(Les dossiers changent de nom tout les jours genre
Camera\
Puis
2017 06 15
2017 06 16...)
Adresse FTP : fab-preview.your-hosting.net
Idenfiant : fabfab
mot de passe : zerofoiszero
Par avance merci pour votre aide.