Récupérer le résultat d'un FTP
loulou
-
esalagea -
esalagea -
Bonjour,
J'exécute une commande FTP dans un shell script.
Je veux récupérer le code retour (status code) pour savoir si le FTP a bien fonctionné ou pas car dans la négative je veux afficher un message.
J'ai utilisé $? mais ça n'a rien donné.
Merci à tous de votre aide.
J'exécute une commande FTP dans un shell script.
Je veux récupérer le code retour (status code) pour savoir si le FTP a bien fonctionné ou pas car dans la négative je veux afficher un message.
J'ai utilisé $? mais ça n'a rien donné.
Merci à tous de votre aide.
A voir également:
- Récupérer le résultat d'un FTP
- Comment recuperer un message supprimé sur whatsapp - Guide
- Resultat foot - Télécharger - Vie quotidienne
- Comment récupérer un compte facebook piraté - Guide
- Récupérer mon compte facebook désactivé - Guide
- Comment récupérer un document dans le presse-papier samsung - Guide
3 réponses
Salut,
Faudrait peut être nous afficher ton script, parce qu'on n'est pas devin et c'est assez dur de deviner les erreurs de syntaxes ou d'imaginer ton codage...
;-))
Faudrait peut être nous afficher ton script, parce qu'on n'est pas devin et c'est assez dur de deviner les erreurs de syntaxes ou d'imaginer ton codage...
;-))
Bonjour,
La commande FTP ci-dessous fonctionne très bien lorsque le fichier à transférer existe.
cd $CHEMIN
ftp -n $AD_IP $PORT << SCRIPT
user "$USER" $PASSWD
verbose
cd conciliation
binary
get $FICHIER
bye
SCRIPT
Par contre lorsque le fichier n'existe pas, je veux provoquer une erreur et afficher un message.
C'est la partie ci-dessous qui ne fonctionne pas. Le programme appelant se termine avec un code retour normal alors qu'il ne le devrait pas.
code_retour=$?
echo "code retour="$code_retour
if [ $code_retour -ne 0 ];
then echo "..... ERREUR lors du transfert "
exit 1
else
echo " "
echo " -> Transfert termine. Veuillez verifier le resultat de votre requete."
fi
Pourtant lorsque le fichier n'existe pas, le FTP signale une erreur:
-> fich à traiter: /apps/oracle/prodappl/omhm/11.5.0/ce/log/20071014.DAT
Verbose mode on.
250 CWD command successful.
200 Type set to I.
200 PORT command successful.
550 20071014.DAT: The system cannot find the file specified.
221
Merci beaucoup de votre aide.
La commande FTP ci-dessous fonctionne très bien lorsque le fichier à transférer existe.
cd $CHEMIN
ftp -n $AD_IP $PORT << SCRIPT
user "$USER" $PASSWD
verbose
cd conciliation
binary
get $FICHIER
bye
SCRIPT
Par contre lorsque le fichier n'existe pas, je veux provoquer une erreur et afficher un message.
C'est la partie ci-dessous qui ne fonctionne pas. Le programme appelant se termine avec un code retour normal alors qu'il ne le devrait pas.
code_retour=$?
echo "code retour="$code_retour
if [ $code_retour -ne 0 ];
then echo "..... ERREUR lors du transfert "
exit 1
else
echo " "
echo " -> Transfert termine. Veuillez verifier le resultat de votre requete."
fi
Pourtant lorsque le fichier n'existe pas, le FTP signale une erreur:
-> fich à traiter: /apps/oracle/prodappl/omhm/11.5.0/ce/log/20071014.DAT
Verbose mode on.
250 CWD command successful.
200 Type set to I.
200 PORT command successful.
550 20071014.DAT: The system cannot find the file specified.
221
Merci beaucoup de votre aide.