main () { for f in "$@"; do GET "$f" | grep -i enclosure |grep -q -i -e mp3 -e ogg if [ $? -eq 0 ]; then addPodcastFeed "$f" else addRegularFeed "$f" fi done } startKDEProgram () { dcop |grep -q "$1" if [ $? -ne 0 ]; then am_running=0 tries=0 echo "$1 läuft ned.. starte es...." "$1" while [ $tries -lt $2 ] && [ $am_running -eq 0 ]; do echo "warte noch das $1 startet (giving up in $(($2 - $tries)) tries)..." sleep 1 dcop |grep -q $1 if [ $? -eq 0 ]; then am_running=1 fi let tries+=1 done echo "versuche = $tries" if [ $tries -eq $2 ]; then kdialog --error "konnte $1 nicht starten " return fi fi } addRegularFeed () { startKDEProgram akregator 30 dcop akregator AkregatorIface addFeedsToGroup '[' "$1" ']' Imported kdialog --msgbox "news feed added to akregator" } addPodcastFeed () { startKDEProgram amarok 30 dcop amarok playlistbrowser addPodcast "$1" kdialog --msgbox "podcast added to amarok" } main "$@"