#!/bin/bash # bash script to play files from a slow network ressource using mpv # caches the file in /tmp and moves to $ARCHIV # export global variable $ARCHIV # set the exit code right for quitting # echo "q quit 255" >> ~/.mpv/input.conf function remove(){ if [ ! $2 ]; then read -p "Removing the origin? [Y/n] " verify if [ ! $verify ] || [ $verify = "ja" ] || [ $verify = "yes" ] || [ $verify = "j" ] || [ $verify = "y" ] || [ $verify = "Y" ]; then rm -v "$1" else echo "Okay, we don't remove $1." fi else rm -v "$1" fi } cp "$@" /tmp & echo -n "Preparing the awesomeness! Starting playback in.." echo -n " 3" sleep 1 echo -n " 2" sleep 1 echo -n " 1" sleep 1 echo " Start!" mpv /tmp/"$@" if [ $? -eq 0 ]; then if [ -d $ARCHIV ]; then echo "Finished $@ succesfull." read -p "Should we move to the Archiv? ($ARCHIV) [Y/n/rm/other] " verify if [ ! $verify ] || [ $verify = "ja" ] || [ $verify = "yes" ] || [ $verify = "j" ] || [ $verify = "y" ] || [ $verify = "Y" ]; then echo "Moving the stuff to $ARCHIV" mv /tmp/"$@" "$ARCHIV" remove "$@" "verify" elif [ $verify = "other" ] || [ $verify = "o" ] || [ $verify = "O" ] || [ $verify = "OTHER" ]; then read -p "Please tell us the absolute path: " path if [ -d $path ]; then echo "Moving to $path." mv /tmp/"$@" "$path" remove "$@" else echo "Sorry, \"$path\" doesn't exist." exit 1 fi elif [ $verify = "r" ] || [ $verify = "rm" ] || [ $verify = "remove" ] || [ $verify = "RM" ] || [ $verify = "R" ]; then echo "Cleaning the mess up. Removing file from /tmp." rm -v /tmp/"$@" else echo "Okay, don't touching the files." fi else echo "Can't move to \"$ARCHIV\". Directory doesn't exist." exit 1 fi else echo "Something is broken with the media player!" exit 1 fi echo "Have a nice day!"