- Mitglied seit
- 12 Jun 2008
- Beiträge
- 3
- Punkte für Reaktionen
- 0
- Punkte
- 0
Hallo erstmal an alle.
Ich sitze hier und schreibe ein Script das mir immer den letzten Podcast aus dem Netz ziehen soll. Im Grunde funktioniert es, zumindestens auf meine PC.
ich lade das Script auf den Stick der an der FritzBox hängt und starte es über eine Telnetsitzung. Es lädt mir brav die rss-feed datei runter und danach kommt folgende Fehlermeldung:
gebe ich busybox ein erhalte ich als Versionsnummer:
BusyBox v1.2.1 (2006.09.12-21:53+0000) multi-call binary
Darin ist awk einhalten.
gebe ich awk --help als Kommando ein gibt er mir das aus:
-sh: awk: not found
Nehme ich als Kommando aber busybox awk --help kommt richtig:
BusyBox v1.2.1 (2006.09.12-21:53+0000) multi-call binary
Usage: awk [OPTION]... [program-text] [FILE ...]
Options:
-v var=val assign value 'val' to variable 'var'
-F sep use 'sep' as field separator
-f progname read program source from file 'progname'
Ich komme nicht dahinter warum das awk in meinem Script nicht benutz wird.
Zum leichterem Verständniss hier das kompltte Script:
Achso, ich habe das original busybox mit mount --bind /var/tmp/busybox /bin/busybox erstetzt da das original kein awk hat.
Ich sitze hier und schreibe ein Script das mir immer den letzten Podcast aus dem Netz ziehen soll. Im Grunde funktioniert es, zumindestens auf meine PC.
ich lade das Script auf den Stick der an der FritzBox hängt und starte es über eine Telnetsitzung. Es lädt mir brav die rss-feed datei runter und danach kommt folgende Fehlermeldung:
Code:
rss.sh: rss.sh: 21: awk: not found
rss.sh: rss.sh: 22: awk: not found
rss.sh: rss.sh: 22: awk: not found
gebe ich busybox ein erhalte ich als Versionsnummer:
BusyBox v1.2.1 (2006.09.12-21:53+0000) multi-call binary
Darin ist awk einhalten.
gebe ich awk --help als Kommando ein gibt er mir das aus:
-sh: awk: not found
Nehme ich als Kommando aber busybox awk --help kommt richtig:
BusyBox v1.2.1 (2006.09.12-21:53+0000) multi-call binary
Usage: awk [OPTION]... [program-text] [FILE ...]
Options:
-v var=val assign value 'val' to variable 'var'
-F sep use 'sep' as field separator
-f progname read program source from file 'progname'
Ich komme nicht dahinter warum das awk in meinem Script nicht benutz wird.
Zum leichterem Verständniss hier das kompltte Script:
Code:
#!/bin/bash
#
# Script zum Podcast download
# V0.1 created by SetiCruncher
#
clear
# Variablen
USB_RSS=/var/media/ftp/MassStorageDevice-Partition-0-1/podcast
USB_FILES=/var/media/ftp/MassStorageDevice-Partition-0-1/files
# Test ob Ordner da ist, wenn nicht wird er angelegt
if test -r $USB_RSS -a -d $USB_RSS
then
echo
else
mkdir $USB_RSS
fi
# RSS-XML Daten holen und letzten Podcast als Variable speichern
cd $USB_RSS
wget http://der-duebel.podspot.de/rss
DATEI=$(grep "<enclosure url=" rss | sed -n '1,1p' | awk -F'"' '{print $2}')
DATEINAME=$(grep "<enclosure url=" rss | sed -n '1,1p' | awk -F'"' '{print $2}' | awk -F/ '{print $5}')
#Podcast Download und Speicherung
if test -f $USB_RSS/$DATEINAME
then
echo "Datei $DATEINAME ist schon vorhanden und wird übersprungen"
rm rss
else
wget $DATEI
rm rss
fi
exit 0
Achso, ich habe das original busybox mit mount --bind /var/tmp/busybox /bin/busybox erstetzt da das original kein awk hat.