J'utilise inotify-tools sur CentOS 7 pour exécuter un script PHP sur chaque téléchargement ftp.Comment détecter que le téléchargement ftp est terminé sur un serveur Linux?
Cela fonctionne très bien, mais il y a un problème; lorsque le téléchargement est interrompu (par exemple si j'arrête le téléchargement ou ferme le client FTP), le script est toujours déclenché.
Est-ce possible pour éviter ces situations?
Mon code:
#!/bin/sh
MONITORDIR="/path/to/some/dir"
inotifywait -m -r -e close_write --format '%w%f' "${MONITORDIR}" | while read NEWFILE
do
php /path/to/myscript.php ${NEWFILE}
done
J'ai essayé d'ajouter 'set -e' au début, n'a pas aidé. Et comment puis-je déterminer si chaque commande a échoué? – HtmHell
Eh bien, à première vue, les commandes utilisent des codes retour (et c'est ce que set -e vérifie). Si cela ne vous aide pas ... vous devez simplement regarder dans chacune de ces commandes et comprendre "comment pourrais-je déterminer que cela a fonctionné" – GhostCat