====== extracteur de fichiers sons pour playlist pls ======
* ce programme fabrique un répertoire locale du nom de la playlist soumise
* il y copie tous les fichiers sons listés dans la playlist
* il y refabrique un fichier playlist pls tout pret
* on peut le coller en menu contextuel pour les fichier pls par un lanceur (thunar)
#!/bin/bash
# exportpls.start lanceur thunar
xterm -e "/usr/local/bin/exportpls.sh $1 ; sleep 5"
exit 0
**exportpls.sh**
**usage : exportpls.sh nom-de-playlist**
#!/bin/bash
###
# extracteur de playliste avec une copie de ses fichiers en locale
# usage exportpls.sh nomplaylist.pls
# regler le probleme des espaces
SAVEIFS=$IFS
IFS=$(echo -en "\n\b")
###
MUSIQUEBASE=~/Musique
if [ ! -d ../Musiques_sources ] ; then
mkdir -p ../Musiques_sources
fi
MUSIQUESOURCE="../Musiques_sources"
PLSBASENAME=`basename $1 .pls`
if [ ! -d $PLSBASENAME ] ; then
mkdir $PLSBASENAME
fi
rm -rf $PLSBASENAME/*
grep "File" $1 > /tmp/pls
awk -F"=" '{ printf("@%s@\n",$2) }' /tmp/pls | tr "@" "'" > /tmp/pls.fic
for i in `cat /tmp/pls.fic`
do
echo $i
FIBASENAME=` basename $i \' `
find $MUSIQUESOURCE -name $FIBASENAME > /tmp/pls.ok
if [ ! -s /tmp/pls.ok ];then
find $MUSIQUEBASE -name $FIBASENAME -exec /bin/cp -af {} $MUSIQUESOURCE/$FIBASENAME \;
fi
find $MUSIQUESOURCE -name $FIBASENAME -exec /bin/cp -L {} $PLSBASENAME/$FIBASENAME \;
## re ecrire playlist pls dans le repertoire
echo "File$LIGNE="$FIBASENAME | tr -d "'" >> ./$PLSBASENAME/$PLSBASENAME.pls
let LIGNE="$LIGNE+1"
done
echo ""
echo "c est fini"
###
IFS=$SAVEIFS
exit 0