#!/bin/bash # video demo at: http://www.youtube.com/watch?v=aK4mAAScnAo # _ _ _ _ # __ _ ___ | |_| |__ | | ___| |_ _ _ # / _` |/ _ \| __| '_ \| |/ _ \ __| | | | #| (_| | (_) | |_| |_) | | __/ |_| |_| | # \__, |\___/ \__|_.__/|_|\___|\__|\__,_| # |___/ # http://gotbletu.blogspot.com/ | http://www.youtube.com/user/gotbletu # A lazy script to download wallpaper and delete old wallpaper at the same time # just add it to your cron for automatic and pure laziness # all you need is a wallpaper changer for your desktop environment and is a done deal, son LOL # Variable (you can change any of these to your liking) real_wall_dir=~/Pictures/Wallpapers temp_wall_dir=/tmp/wallpaper_interfacelift expire_wall_date=30 url_wall_link=http://interfacelift.com/wallpaper/downloads/random/hdtv/ # create folders mkdir -p $real_wall_dir mkdir -p $temp_wall_dir cd $temp_wall_dir # download wallpapers from site wget -U "Mozilla/5.0" $(lynx --dump $url_wall_link | awk '/7yz4ma1/ && /jpg/ && !/html/ {print $2}') # delete any file under 50k in size (to avoid shitty thumnbails or crap quality) find . -type f -iname "*.jp*g" -size -50k -exec rm {} \; # change the downloaded wallpaper metadata (modified date to today's date) # this makes it easy to see which files are older & to delete later on find . -type f -iname "*.jp*g" -exec touch -m {} \; # now that everything is cleaned and filtered # send the downloaded images to the wallpaper folder and remove temp folder find . -type f -iname "*.jp*g" -exec mv {} $real_wall_dir \; rm -rf $temp_wall_dir # delete wallpaper image older then X days cd $real_wall_dir find $real_wall_dir -mtime +$expire_wall_date -exec rm {} \;