Est-il possible d'exécuter un script Python lorsqu'un fichier a été ajouté à un dossier?
Dans mon scénario, j'ai un dossier qui contient des films et le script Python obtient les détails (nom, année, tracé, classement, etc.) d'OMDb et les place dans un fichier que MySQL utilise.
Chaque fois que j'ajoute un film, je dois exécuter le script Python.
Je veux savoir s'il est possible d'exécuter automatiquement le script Python lorsqu'un fichier a été ajouté au dossier?
Merci d'avance.
En considérant un dossier unique dans lequel vous ajoutez souvent des fichiers.
Créez un script (Python et Bash sont de bonnes options) qui boucle pour la taille du dossier toutes les 'n' secondes (ou minutes, à quelle fréquence ajoutez-vous des fichiers?).
Chaque fois qu'un nouveau fichier est créé, la taille change et le script doit déclencher une fonction qui recherche le dernier fichier ajouté et obtient les informations de fichier nécessaires et lance votre script Python.
Vous pouvez facilement intégrer les descriptions ci-dessus à votre script Python existant.
Si vous avez plusieurs dossiers, vous pouvez le rendre récursif.
Faites-moi savoir si vous ne savez pas comment le faire et je vous aiderai.
Bonne chance!
Créer un script wrapper watch_folder
:
#!/bin/bash
FILE="$1"
if [ "${FILE##*.}" = "mov" ]
then
your_python_script "$2/$1"
fi
exit 0
rendez-le exécutable:
chmod +x <watch_folder>
Regardez votre dossier:
inoticoming <your_movie_folder> <path_of_watch_foldet_script> {} <your_movie_folder> \;
Votre script python est démarré sur chaque nouveau fichier du dossier avec le chemin complet du nom de fichier.