[Shell Script] Rapatrier automatiquement un fichier via FTP

Rapatrier automatiquement un fichier via FTP [Shell Script] - Shell/Batch - Programmation

Marsh Posté le 15-11-2002 à 12:22:18    

En gros, j'ai besoin de récupérer régulièrement un fichier de log créé sur un serveur distant pour l'analyser et faire des stats.
 
Mon problème, c'est que je ne sais pas comment le récupérer autrement qu'en ouvrant une session ftp "manuellement".
 
Quelqu'un pourrait-il me proposer un embryon de script qui:
1. Se connecterait au serveur.
2. Se placerait dans le bon répertoire.
3. Téléchargerait un fichier précis (GET log.txt).
4. Se déconnecterait.
 
Merci d'avance pour votre aide.

Reply

Marsh Posté le 15-11-2002 à 12:22:18   

Reply

Marsh Posté le 15-11-2002 à 20:13:37    

Toucouch a écrit a écrit :

En gros, j'ai besoin de récupérer régulièrement un fichier de log créé sur un serveur distant pour l'analyser et faire des stats.
 
Mon problème, c'est que je ne sais pas comment le récupérer autrement qu'en ouvrant une session ftp "manuellement".
 
Quelqu'un pourrait-il me proposer un embryon de script qui:
1. Se connecterait au serveur.
2. Se placerait dans le bon répertoire.
3. Téléchargerait un fichier précis (GET log.txt).
4. Se déconnecterait.
 
Merci d'avance pour votre aide.




 
 
il te faut un fichier .netrc dans le $HOME de l'user qui fait le ftp
 
qui ressemble a ca :
machine dupont
login durant
password jemelesgele
 
tu fais un script (qui execute le ftp et analyse ta log)
#!/bin/sh
.....
ftp dupont << EOF  
cd logs
get log.txt
EOF
....
#analyse du fichier et resultat dans rapport.txt
....
#puis par exemple envoi d'un mail de rapport a ROOT
mailx -s "dupont log.txt : rapport d'annalyse" root < rapport.txt
 
regarde le man page de netrc pour verifie parceque la j'ecrit de memoire..


---------------
[:kuroineko] Francois.P tel: (+33)617230820 http://www.ifrance.com/fpussault  fpussault@caramail.com
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed