Christian Müller – Letzte Änderung: 05.12.2015 21:24 Uhr
Podcastverwaltung - Alle aktuellen Podcasts ins SyncFolder Hardlinken
Podcasts in einem Ordner als Hardlinks bereithalten, die ein anderes Script dann jeweils per rsync
während dem Ladevorgang auf meinen MP3 Player in den Podcast Ordner wirft.
Die Podcasts sind bereits auf dem Rechner vorhanden. Heruntergeladen werden sie mit Podget per Cronjob. Wenige Minuten nach diesem läuft dann das folgende Script, irgendwann später steck ich den Player zum Laden an, er wird gemountet, es gibt nen rsync -> unmount -> Akku laden, morgens dann geladen und befüllt.
#!/bin/bash
#rm -rf "/data/MCP/SanSync/Podcast/WRINT/WRINT Alle/"
#mkdir "/data/MCP/SanSync/Podcast/WRINT/WRINT Alle/"
Podcasts="/data/MCP/Podcast/"
Sync="/data/MCP/SanSync/Podcast/"
days=30
PCs[0]="WRINT/WRINT_Alle"
PCs[1]="Favoriten/CRE"
PCs[2]="Favoriten/FreakShow"
PCs[3]="Favoriten/Logbuch_Netzpolitik"
PCs[4]="Favoriten/Alternativlos"
PCs[5]="Favoriten/SuS"
PCs[6]="Musik/DrumAndBassArena"
PCs[7]="Musik/UKFMusic"
PCs[8]="Wissenschaft/Minkorrekt"
PCs[9]="Wissenschaft/WRINT_Wissenschaft"
PCs[10]="Wissenschaft/Resonator"
PCs[11]="Wissenschaft/Sternengeschichten"
PCs[12]="Wissenschaft/Forschung_aktuell"
PCs[13]="Favoriten/NSFW"
PCs[14]="Radio/Feature-Deutschlandfunk"
PCs[15]="Alle/Chaosradio"
for pc in "${PCs[@]}"
do
xsrc="$Podcasts$pc"
xdst="$Sync$pc"
echo
#echo
echo Podcast $pc
#echo Source: $xsrc
#echo Destination: $xdst
#echo Lösche alten Kram.
#echo
if [ -d "$xdst" ]
then
vorher=`find "$xdst" | grep -v ".AppleDouble"`
vorher_count=`find "$xdst" | grep -c"" -v ".AppleDouble"`
echo rm -rf "$xdst/*" | sh
#mkdir "$xdst"
echo $xdst
else
vorher=Null
echo Erstes Mal. Muss $xdst anlegen.
mkdir "$xdst"
fi
find "$xsrc" -name "*.mp3" -mtime -$days -printf "%T+\t§%p\n" \
| grep -v ".AppleDouble" \
| sort -r \
| awk -v xdst="$xdst" -v pc="$pc" -F"§" '{print "ln \""$2"\" \""xdst"/\""}' | sh
nachher=`find "$xdst" | grep -v ".AppleDouble"`
nachher_count=`find "$xdst" | grep -c"" -v ".AppleDouble"`
echo $pc fertig. Neue Folgen:
echo --- Neu: ---
diff <(echo "$vorher") <(echo "$nachher") && echo --- Ende ---
echo Gesamt: $nachher_count / $vorher_count
done
Dieses Script läuft per Cronjob alle 8h. Die Befüllung meines MP3 Players erfolgt dann durch ein beherztes
rsync -avb --size-only --delete --update /Volumes/MCP/SanSync/Podcast/ /Volumes/SD-MEDIA/Podcasts/SanSync