scripts/delicious_backup.sh

26 lines
732 B
Bash
Executable file

#!/usr/bin/env bash
# Author: Oliver Ladner <oli@lugh.ch>
# License: LGPL
#
# Fetches all your delicious bookmarks
# and validates the XML before saving.
# Requires xmlstarlet
DEL_USER=foo
DEL_PASS=bar
API_URL=api.del.icio.us/v1/posts/all
BKP_FILE=/home/username/deliciousbackup.xml
# When no backup exists, just do it
if [ ! -f $BKP_FILE ]; then
curl -s https://$DEL_USER:$DEL_PASS@$API_URL > $BKP_FILE
else
curl -s https://$DEL_USER:$DEL_PASS@$API_URL > $BKP_FILE.tmp
if [ $(xmlstarlet validate $BKP_FILE.tmp > /dev/null 2>&1; echo $?) -gt 0 ]; then
rm $BKP_FILE.tmp
echo "Downloaded XML file not valid. Previous backup preserved."
# if XML is valid, move to final destination
else
mv $BKP_FILE.tmp $BKP_FILE
fi
fi