Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2631 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Supprimer des fichiers sur un ftp après un download reussi

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Supprimer des fichiers sur un ftp après un download reussi

n°702962
SnowKhan
http://www.snow-fr.com
Posté le 06-07-2005 à 12:48:00  profilanswer
 

Bonjour,  
 
je débute en Shell Script et j'ai un petit problème à résoudre.
 
J'ai un script qui tourne en cron et qui me ramène avec wget des fichiers de logs de mon ftp tous les jours.
 
J'aimerais écrire un nouveau script qui va d'une part vérifier que les fichiers ont bien été ramenés (vu que mon serveur coupe souvent c'est pas forcément le cas vu que c'est lancé automatiquement par cron), et d'autre part supprimer les fichiers de logs sur mon ftp si les fichiers en question existent bien en local. S'ils existent pas, le script doit les ramener et les effacer ensuite.
 
La où je bloque c'est pour récupérer la liste des fichiers *.log sur mon ftp, et la comparer aux fichiers de log déjà présent sur ma machine locale (afin de déterminer pour chacun si je peux l'effacer ou d'abord le télécharger avant).
 
Pouvez vous me donner quelques tuyaux ?  
 
Je vous remercie d'avance.
 
SK.


---------------
.: Snowboard Community :.
mood
Publicité
Posté le 06-07-2005 à 12:48:00  profilanswer
 

n°704916
SnowKhan
http://www.snow-fr.com
Posté le 11-07-2005 à 10:52:05  profilanswer
 

Apparemment le petit problème semble plus compliqué que je ne le pensais ou alors personne n'a vu mon sujet ! :D


---------------
.: Snowboard Community :.
n°704929
_darkalt3_
Proctopathe
Posté le 11-07-2005 à 11:25:05  profilanswer
 

ben un script perl pour la comparaison des fichiers ?


---------------
Töp of the plöp
n°704934
jlighty
Posté le 11-07-2005 à 11:34:56  profilanswer
 

Dans tous les cas il faut les télécharger avant.
Voici ce que je propose :
- dans un repertoire temporaire on télécharge tous les logs avec "wget -o wgetlog ftp://[adresseIP]/*.log"
- ensuite on regarde quels sont les fichiers qui sont bien télécharger : examine le fichier log "wgetlog"  
pour un fichier téléchargé avec succès :
[date] [débit moyen] - [fichier] saved  
donc un fgrep saved puis on récupère le nom du fichier (cut ou awk)
- les fichiers mal téléchargés (ceux qui sont dans le répertoire temporaire sans être dans la liste des fichiers "saved" ) sont retéléchargés.
- comparaison entre fichier log sur le disque et fichier de log dans le répertoire temporaire (md5sum)
- suivant le résultat, on détruit ou non le fichier sur le FTP


Message édité par jlighty le 11-07-2005 à 11:38:24
n°704935
SnowKhan
http://www.snow-fr.com
Posté le 11-07-2005 à 11:35:59  profilanswer
 

Merci pour la réponse _darkalt3_, je commençais à desespérer !
 
Par contre je ne connais pas du tout PERL, et j'ai déjà du mal à débuter en Shell Script ! Tu penses que ce n'est pas possible à faire en bash ?
 
EDIT : je viens de lire ta réponse jlighty, je te remercie, j'ai bien compris le process, je vais maintenant essayer de coder tout ça  ;) (jusqu'à maintenant j'avais été aidé par un pote mais il est plus dispo !)


Message édité par SnowKhan le 11-07-2005 à 11:42:07

---------------
.: Snowboard Community :.
n°704985
burgergold
5$? va chez l'diable!
Posté le 11-07-2005 à 13:32:55  profilanswer
 

perl et librairie Net::FTP
 
doit bien y avoir un moyen de faire un md5 du fichier avant de le downloader, ensuite tu fais un md5 du fichier downloadé
 
si les md5 sont pareil, tu supprimes

n°704988
jlighty
Posté le 11-07-2005 à 13:40:01  profilanswer
 

en effet le md5sum peut être effectué directement depuis le serveur FTP mais pour éviter des problèmes d'accès concurrentiels il faut :
- au moment où l'on doit récupérer la liste des fichiers, les md5 doivent être effectués et enregistrés dans un fichier. D'autre part les fichiers ne doivent pas être modifié par le serveur lors de leur transfert.
Cependant c'est possible avec bash mais c'est largement mieux en Perl :D


Message édité par jlighty le 11-07-2005 à 13:40:29

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Supprimer des fichiers sur un ftp après un download reussi

 

Sujets relatifs
KSH/Solaris - supprimer les fichiers trop vieuxsupprimer tous les ">blablabla</a> d'une chaine avec sed
Logiciel effacant les fichiers doublonapache ne peut modifier les fichiers upld par ftp, ma solution est ok?
[Apache] Dynamic Vhost et fichiers de logs[Debian] Woody : noms de fichiers incomplets ?!
J'ai encore réussi à faire planter ma partition NTFS[Mac OS X] Rechercher un terme dans des fichiers
Emplacement fichiers dans un FHS 
Plus de sujets relatifs à : Supprimer des fichiers sur un ftp après un download reussi


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR