Je souhaite surveiller (par cron, la partie couverte: P) de nouveaux fichiers audio dans des dossiers afin de pouvoir les ajouter à des fichiers XML distincts qui agissent comme un flux RSS de podcast. La structure du fichier ressemble à ceci:
- Podcasts
-- Show number one
--- Audio file of the show for week one.mp3
--- Audio file of the show for week two.mp3
-- Show number two
--- Audio file of the show for week one.mp3
--- Audio file of the show for week two.mp3
-- So on
La création de fichier audio est automatisée par un ordinateur de notre studio, qui les télécharge sur notre serveur Ubuntu afin que les fichiers soient accessibles au public. Maintenant, l’idée est de tout automatiser car nous n’avons que des volontaires et ils sont paresseux! :)
À présent, le script devrait rechercher de nouveaux dossiers dans les fichiers "podcast" et les nouveaux fichiers audio dans les dossiers "afficher le numéro X". Chaque fois qu'il y a un nouveau dossier de spectacle, je dois créer un nouveau fichier XML pour ce podcast spécifique et chaque fois qu'il y a un nouveau fichier audio dans une émission, je dois l'ajouter au fichier XML de l'émission.
Maintenant, je connais très bien la structure des fichiers XML, je suis tout à fait dans le noir en ce qui concerne les scripts bash. Comment créer un script qui recherche de nouveaux fichiers et dossiers? Le script peut-il écrire dans un fichier XML?
Cordialement,
Jetez un coup d'oeil à iWatch
apt-get install iWatch
De la page de manuel:
iWatch - un système de fichiers en temps réel surveille/surveille les modifications apportées aux répertoires/fichiers spécifiés
Exemple:
iWatch /tmp -e create -c <your command/script>
Explique:
surveillez dossier/tmp pour les nouveaux fichiers/dossiers créés. Pour chaque nouvelle commande de création de fichier/dossier créée, votre commande/script
Dans votre cas, vous pouvez exécuter un script qui génère ces fichiers XML.
Je ne peux pas vous donner de réponse plus détaillée, mais c'est peut-être un bon point de départ pour de meilleures réponses :)
Il existe peut-être d'autres méthodes pour éditer des fichiers XML dans bash, mais quelque chose comme XMLStarlet peut fonctionner pour vous. Désolé, cette réponse est partagée entre Wolfy et moi.