Outils pour utilisateurs

Outils du site


bash:extraitpls

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
bash/extraitpls.txt · Dernière modification : 2024/02/09 17:10 de 127.0.0.1