bash 스크립트에서 RSS 피드의 새 항목을 보는 방법은 무엇입니까?

bash 스크립트에서 RSS 피드의 새 항목을 보는 방법은 무엇입니까?

허드슨 ci 서버에서 RSS 피드를 시청해야 합니다. 새 항목을 사용할 수 있을 때마다 호출하여 소리를 재생하고 싶습니다 #>play sound.wav.

RSS 피드를 보고 새 항목이 나타날 때마다 명령을 실행할 수 있는 도구를 아는 사람이 있습니까?

살펴보았는데 rsstail최신 항목이 아닌 피드의 모든 항목을 가져오거나 마지막 조회 이후의 새 항목만 가져옵니다.

답변1

당신은 사용해 볼 수 있습니다뉴스 보이트외부 명령을 실행하는 옵션이 있습니다(참조:notify-program 문서에서).

선창자맞춤설정 가능한 항목도 있습니다., 언뜻보기에는 전체 구성 시스템이 약간 복잡해 보이지만.

+shell을 사용하면 rsstail외부 명령을 호출할 수도 있습니다. 이미 알아낸 것부터 시작하세요.

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

출력을 while read루프로 파이프합니다.

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

답변2

해결책은 다음과 같습니다.

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

따라서 피드에 새로운 주제가 게시될 때마다 사운드가 재생됩니다. 게임은 sox 패키지로 제공됩니다.

답변3

당신은 시도 할 수 있습니다:

#!/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

관련 정보