parent
4f2f0bf1b0
commit
a869bbfdea
@ -0,0 +1 @@
|
||||
*~
|
||||
@ -1,3 +1,10 @@
|
||||
# mpd_playlist_diff
|
||||
|
||||
Script for creating diff from playlist based on stored playlist listing in another file.
|
||||
Simple script supposed to be run from cron which generates changelog of current MPD playlist. it is based on storing previous version of playlist and then doing some 'diff' magic with it and current playlist. I wrote this script for my MPD streaming instance. Log could be used as input data for statuspage.
|
||||
|
||||
**Dependencies:**
|
||||
|
||||
* mpc
|
||||
|
||||
**Licence:**
|
||||
WTFPL
|
||||
@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
|
||||
finallog="/var/tmp/mplaydiff.log"
|
||||
|
||||
if [ ! -r /var/tmp/mplaylist-old ]; then
|
||||
mpc playlist > /var/tmp/mplaylist
|
||||
sort -o /var/tmp/mplaylist /var/tmp/mplaylist
|
||||
cp /var/tmp/mplaylist /var/tmp/mplaylist-old
|
||||
echo "mpplaylists initialized"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
check=$(cmp /var/tmp/mplaylist-old /var/tmp/mplaylist)
|
||||
if [ -z "$check" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
REMOVED=$(comm -23 /var/tmp/mplaylist-old /var/tmp/mplaylist)
|
||||
comm -23 /var/tmp/mplaylist-old /var/tmp/mplaylist > /var/tmp/mplaylist-removed
|
||||
ADDED=$(comm -13 /var/tmp/mplaylist-old /var/tmp/mplaylist)
|
||||
comm -13 /var/tmp/mplaylist-old /var/tmp/mplaylist > /var/tmp/mplaylist-added
|
||||
|
||||
datum=$(date +%Y%m%d-%H%M%S)
|
||||
echo "::: $datum :::" >> $finallog
|
||||
|
||||
if [ "$REMOVED" != "" ]; then
|
||||
# echo "removed files:" >> $finallog
|
||||
# cat /var/tmp/mplaylist-removed
|
||||
sed -is "s/^/- /" /var/tmp/mplaylist-removed
|
||||
cat /var/tmp/mplaylist-removed >> $finallog
|
||||
echo
|
||||
fi
|
||||
if [ "$ADDED" != "" ]; then
|
||||
# echo "added files:" >> $finallog
|
||||
# cat /var/tmp/mplaylist-added
|
||||
sed -is "s/^/+ /" /var/tmp/mplaylist-added
|
||||
cat /var/tmp/mplaylist-added >> $finallog
|
||||
fi
|
||||
|
||||
mv -f /var/tmp/mplaylist /var/tmp/mplaylist-old
|
||||
mpc playlist > /var/tmp/mplaylist
|
||||
sort -o /var/tmp/mplaylist /var/tmp/mplaylist
|
||||
Loading…
Reference in new issue