Как наблюдать RSS ленту за новыми записями из сценария удара?

Вот сценарий удара, который я использовал:

#!/bin/bash
mysqldump -u user1 -p DatabaseName | gzip > BackupFolder/backup`date +%F_%T`.sql.gz

Файлы похожи:

backup2011-03-02_15:16:46.sql.gz

Укажите на задание крона на это для выполнения ночью или независимо от того, что Вы предпочитаете.

10
06.10.2011, 12:26
3 ответа

Это - решение:

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

так каждый раз, когда новая тема выпущена в канале, звук будет играться. игра упаковывается в носках

4
27.01.2020, 20:01
  • 1
    я понимаю, что это решает часть об обновлении, но (еще) не способ играть звук (основная часть, которую Вы попросили). При решении его также запишите как. –  rozcietrzewiacz 07.10.2011, 15:26
  • 2
    Ваше право. просто обновление... –  martin 12.10.2011, 13:45

Можно попытаться использовать Newsbeuter, который имеет опцию выполнить внешнюю команду (см. notify-program в документации).

Песнь также имеет некоторые настраиваемые рычаги, хотя целая система конфигурации выглядит немного более сложной на первый взгляд.

С rsstail + оболочка можно также вызвать внешние команды. Начнитесь с тем, что Вы уже выяснили:

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

и передайте вывод по каналу к a while read цикл:

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

Вы могли попробовать:

#!/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
1
27.01.2020, 20:01

Теги

Похожие вопросы