Comment regarder le stream rss pour les nouvelles inputs du script bash?

J'ai besoin de regarder un stream RSS de notre server hudson ci. Chaque fois qu'une nouvelle input est disponible je veux jouer un son en appelant #>play sound.wav .

Est-ce que quelqu'un connaît un outil qui peut regarder un stream rss et triggersr une command chaque fois qu'une nouvelle input apparaît?

J'ai regardé rsstail mais il obtient toutes les inputs du stream et pas les dernières ou seulement celles qui sont nouvelles depuis la dernière search.

Vous pouvez essayer d'utiliser Newsbeuter avec une option pour exécuter une command externe (voir notify-program dans la documentation ).

Canto a également des crochets personnalisables, bien que l'set du système de configuration semble un peu plus compliqué à première vue.

Avec rsstail + shell, vous pouvez également appeler des commands externes. Commencez avec ce que vous avez déjà compris:

 rsstail -i 3 -u example.com/rss.xml -n 0 

et canaliser la sortie vers une boucle de while read while:

 rsstail -i 3 -u example.com/rss.xml -n 0 | while read line do aplay /some/sound/file.wav echo "$line" done 

C'est la solution:

 rsstail -i 3 -u example.com/rss.xml -n 0 | while read x ; do play fail.ogg ; done 

donc chaque fois qu'un nouveau sujet est publié dans le stream, le son sera joué. le jeu est emballé dans sox

Tu pourrais essayer:

 #!/bin/bash last="" while true do now="$(curl http://yourdomain/feed.rss 2> /dev/null | grep pubDate | head -1)" test "$last" != "$now" && play mysound.wav last="$now" sleep 1m done