autocast/cleanup.bash

50 lines
732 B
Bash
Executable file

#!/bin/bash
prefix=$1
if [ -z $prefix ]
then
echo "Must specific a prefix."
exit 1
fi
function clean_old() {
prefix=$1
ext=$2
to_keep=$3
ls $prefix*$ext 1> /dev/null 2>&1
clean=$?
count=0
if [ 0 -eq $clean ]
then
for file in $(ls -r $prefix*$ext)
do
if [ $count -lt $to_keep ]
then
count=$((count + 1))
else
rm $file
fi
done
fi
}
function clean_ext() {
ls $1*$2 1> /dev/null 2>&1
clean=$?
if [ 0 -eq $clean ]
then
rm $1*$2
fi
}
clean_old $prefix "wav" 2
clean_old $prefix "mp3.xml.*" 1
clean_old $prefix "m4a.xml.*" 1
clean_old $prefix "ogg.xml.*" 1
clean_ext $prefix "mp3"
clean_ext $prefix "chapters.txt"
clean_ext $prefix "m4a"
clean_ext $prefix "ogg"
clean_ext $prefix "flac"