49 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
		
		
			
		
	
	
			49 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| 
								 | 
							
								#!/bin/sh
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								# Nico Schottelius <nico@schottelius.(net|org)>
							 | 
						||
| 
								 | 
							
								# Date: 25-May-2004
							 | 
						||
| 
								 | 
							
								# Last Modified: 27-May-2004
							 | 
						||
| 
								 | 
							
								# Get only the latest headlines from different news sites
							 | 
						||
| 
								 | 
							
								# Version: 0.3
							 | 
						||
| 
								 | 
							
								#
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								BASE_DIR=~/.get_news
							 | 
						||
| 
								 | 
							
								TMP=/tmp/$$-$UID-`date +%s`
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if [ $# -ne 1 ]; then
							 | 
						||
| 
								 | 
							
								   echo "Go away. I want one argument."
							 | 
						||
| 
								 | 
							
								   exit 666
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								USERFILE="$BASE_DIR/$1"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								case "$1" in
							 | 
						||
| 
								 | 
							
								   heise)
							 | 
						||
| 
								 | 
							
								      RDF=http://www.heise.de/newsticker/heise.rdf
							 | 
						||
| 
								 | 
							
								      BEGIN_NEWS='<title>'
							 | 
						||
| 
								 | 
							
								      END_NEWS='<\/title>'
							 | 
						||
| 
								 | 
							
								      NEWS_NAME="heise online news"
							 | 
						||
| 
								 | 
							
								      ;;
							 | 
						||
| 
								 | 
							
								   pro-linux)
							 | 
						||
| 
								 | 
							
								      RDF=http://www.pl-forum.de/backend/pro-linux.rdf
							 | 
						||
| 
								 | 
							
								      BEGIN_NEWS='<title>'
							 | 
						||
| 
								 | 
							
								      END_NEWS='<\/title>'
							 | 
						||
| 
								 | 
							
								      NEWS_NAME="Pro-Linux News"
							 | 
						||
| 
								 | 
							
								      ;;
							 | 
						||
| 
								 | 
							
								   *)
							 | 
						||
| 
								 | 
							
								      "Go away. I don't know anything about $1."
							 | 
						||
| 
								 | 
							
								      exit 23
							 | 
						||
| 
								 | 
							
								esac
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# get
							 | 
						||
| 
								 | 
							
								curl -s "$RDF" | grep "$BEGIN_NEWS" | grep -v "$NEWS_NAME" | sed -e "s/$BEGIN_NEWS//g"  -e "s/$END_NEWS//g" > "$TMP"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								[ -d "$BASE_DIR" ] || mkdir -p "$BASE_DIR"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								if [ ! -f "$USERFILE" ]; then
							 | 
						||
| 
								 | 
							
								   cat "$TMP"
							 | 
						||
| 
								 | 
							
								else 
							 | 
						||
| 
								 | 
							
								   diff -u "$USERFILE" "$TMP" | grep ^+ | grep -v ^+++ 2>/dev/null | sed 's/^+//g'
							 | 
						||
| 
								 | 
							
								fi
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								mv -f "$TMP" "$USERFILE" || rm -f "$TMP"
							 |