A voir également:
- Transfert FTP (sous UNIX)
- Whatsapp transfert discussion - Accueil - WhatsApp
- Core ftp - Télécharger - Téléchargement & Transfert
- Typsoft ftp server - Télécharger - Téléchargement & Transfert
- Transfert de mail - Guide
- Url ftp - Forum Windows
4 réponses
Salut,
La commande est:
ls | grep nom_du_fichier
si la reponse est vide alors le fichier n'existe pas sur le serveur distant.
J'espere que tu as compris ...
Radu
La commande est:
ls | grep nom_du_fichier
si la reponse est vide alors le fichier n'existe pas sur le serveur distant.
J'espere que tu as compris ...
Radu
Salut bsad
Bon,
Faire man ftp
voir les options sunique ou runique
Mais je ne suis pas sur
Sinon pour ce que tu veux faire
il faut faire un shell script
qui teste la presence du fichier
s il n est pas present alors tu declenches un ftp automatique
exemple de ftp automatique
creer un fichier
.netrc dans la home du user en tant que user
faire chmod 400 .netrc (le fichier doit etre lu que pour le user) (Sinon ca ne marche pas)
le fichier .netrc
est de la forme:
machine SUN1 login user password userpasswd
puis dans un fichier texte fixe ou que tu construit par exemple transfert
tu met
put fichier
quit
ensuite tu fais
cat transfert |ftp SUN1
voir les commandes rsh et rcp au cas ou
Bon,
Faire man ftp
voir les options sunique ou runique
Mais je ne suis pas sur
Sinon pour ce que tu veux faire
il faut faire un shell script
qui teste la presence du fichier
s il n est pas present alors tu declenches un ftp automatique
exemple de ftp automatique
creer un fichier
.netrc dans la home du user en tant que user
faire chmod 400 .netrc (le fichier doit etre lu que pour le user) (Sinon ca ne marche pas)
le fichier .netrc
est de la forme:
machine SUN1 login user password userpasswd
puis dans un fichier texte fixe ou que tu construit par exemple transfert
tu met
put fichier
quit
ensuite tu fais
cat transfert |ftp SUN1
voir les commandes rsh et rcp au cas ou
Oui, mais comment on vérifie que le fichier existe ou pas sur le serveur distant alors qu'on n'y accède que par FTP.
Je veux eviter de faire en plusieur fois le ftp parce que j'ai des fichiers très volumineux. C'est à dire je ne veux pas refaire un get de mon fichier (après le put) sur le serveur local depuis le serveur distant en lui donnant un autre nom et si le get ramène quelque chose alors mon put s'est bien déroulé (risque de prendre beaucoup de temps)
Je veux eviter de faire en plusieur fois le ftp parce que j'ai des fichiers très volumineux. C'est à dire je ne veux pas refaire un get de mon fichier (après le put) sur le serveur local depuis le serveur distant en lui donnant un autre nom et si le get ramène quelque chose alors mon put s'est bien déroulé (risque de prendre beaucoup de temps)
Bon ben si tu n as que ftp
Tu fais un script qui check la presence du fichier
et un autre qui l envoie
il faut rediriger la sortie standart vers un fichier du style
cat transfertLS|ftp SUN1 >>testpresence.txt
avec transfertLS ou il ya ls-la a la place de mput
Soit dit en passant Chez moi
si je fais ftp
open SUN1
user toto
passwd titi
ls -la trace
je genere un fichier trace en local sous ma machine
UTILISE DONC LA COMMANDE LS DE FTP POUR GENERER UN FICHIER DE TRACE ET SI IL EST PAS EN PLACE ENVOIE TON FICHIER.
Tu fais un script qui check la presence du fichier
et un autre qui l envoie
il faut rediriger la sortie standart vers un fichier du style
cat transfertLS|ftp SUN1 >>testpresence.txt
avec transfertLS ou il ya ls-la a la place de mput
Soit dit en passant Chez moi
si je fais ftp
open SUN1
user toto
passwd titi
ls -la trace
je genere un fichier trace en local sous ma machine
UTILISE DONC LA COMMANDE LS DE FTP POUR GENERER UN FICHIER DE TRACE ET SI IL EST PAS EN PLACE ENVOIE TON FICHIER.
Pourquoi pas faire ça en Python ?
J'ai fait un script qui va chercher les mises à jour McAfee et qui les upload sur un serveur FTP local, en vérifiant d'abord la présence des fichiers.
Pour mettre un fichier en vérifiant sa présence, ça fait un truc du genre:
import ftp
ftp_session = ftplib.FTP()
ftp_session.connect('serveur_ftp',port)
ftp_session.login('user','motdepasse')
dat = ftp_session.nlst('sdat*.exe')
if not dat:
____monfichier = open('SDATxxx.EXE,'rb')
____ftp_session.storbinary('STOR SDATxxxx.EXE, monfichier)
____monfichier.close()
ftp_session.quit()
Voilà... pas sorcier, non ?
Python est un langage de script opensource, et il est disponible sur de nombreuses plateformes.
http://www.python.org
(J'ai mis les ____ parceque le forum CCM supprime les espaces)
J'ai fait un script qui va chercher les mises à jour McAfee et qui les upload sur un serveur FTP local, en vérifiant d'abord la présence des fichiers.
Pour mettre un fichier en vérifiant sa présence, ça fait un truc du genre:
import ftp
ftp_session = ftplib.FTP()
ftp_session.connect('serveur_ftp',port)
ftp_session.login('user','motdepasse')
dat = ftp_session.nlst('sdat*.exe')
if not dat:
____monfichier = open('SDATxxx.EXE,'rb')
____ftp_session.storbinary('STOR SDATxxxx.EXE, monfichier)
____monfichier.close()
ftp_session.quit()
Voilà... pas sorcier, non ?
Python est un langage de script opensource, et il est disponible sur de nombreuses plateformes.
http://www.python.org
(J'ai mis les ____ parceque le forum CCM supprime les espaces)
Oui j'ai compris mais le problème est que je ne peux tester derrière. C'est à dire :
Quand je fait le grep nom_fichier, j'ai la une ligne comportant le nom du fichier mais je ne peux pas faire du tes.
Exemple :
ftp nom_machine
open 11.125.135.111
use user mot_de_passe
cd rep_distant
ascii
ls nom_fichier (ls tout court marche aussi)
..
.. /* ICI JE VEUX DIRE SI nom_fichier existe alors ne pas faire de put */
..
put nom_fichier
bye
exit($status)
D'autre part, commet peut on s'assurer que le ftp s'est bien passé (comment recupérer le code retour du ftp).
Merci à Radu et ceux qui peuvent m'aider aussi.