Bonjour,
voilà avec les modifications :
#!/bin/bash
DEVICE=/dev/sr0
cddb_folder=~/.cddb
if [ ! -d "$cddb_folder" ]; then
echo "Le dossier n'existe pas ... création de .cddb"
mkdir "$cddb_folder"
fi
CDDA=$(cdparanoia -Q 2>&1 | grep -c 'audio only')
if [ "$CDDA" -eq 1 ]; then
CDDBURL="http://gnudb.gnudb.org/~cddb/cddb.cgi"
MYUSER="whoami"
MYHOST="hostname"
DISCID=$(cd-discid "$DEVICE" 2>/dev/null) || exit 1
NAME_FILE=$(cd-discid "$DEVICE" 2>/dev/null | awk '{print $1}')
CD=$(cddb-tool query "$CDDBURL" 1 "$MYUSER" "$MYHOST" "$DISCID")
## Vérification de la présence du fichier.
## Si ce n'est pas le cas, on le télécharge.
if [[ ! -f ~/.cddb/"$NAME_FILE" ]]; then
echo ""
echo "Le fichier $NAME_FILE est absent."
sleep 2
cddb-tool read "$CDDBURL" 3 "$MYUSER" "$MYHOST" \
"$(echo "$CD" | head -1 | awk '{print $2 " " $3}')" > ~/.cddb/"$NAME_FILE"
fi
## On vérifie si celui-ci est bien rempli.
## Si ce n'est pas le cas, on le re-télécharge.
SIZE_NAME_FILE=$(stat -c%s ~/.cddb/"$NAME_FILE")
if [[ -f ~/.cddb/"$NAME_FILE" ]] && [[ "$SIZE_NAME_FILE" -eq 0 ]]; then
echo ""
echo "Le fichier $NAME_FILE est vide, on re-télécharge les infos."
sleep 2
cddb-tool read "$CDDBURL" 3 "$MYUSER" "$MYHOST" \
"$(echo "$CD" | head -1 | awk '{print $2 " " $3}')" > ~/.cddb/"$NAME_FILE"
fi
### vérification de l'encodage du fichier.
### Conversion si besoin.
verif_charset=$(file -i ~/.cddb/"$NAME_FILE" | awk ' /charset=iso-8859-1/ {print $3}')
if [[ "$verif_charset" == "charset=iso-8859-1" ]]; then
echo "Le fichier $NAME_FILE est encodé en charset=iso-8859-1, on le passe en UTF8."
sleep 2
iconv -f ISO-8859-1 -t UTF8 ~/.cddb/"$NAME_FILE" -o ~/.cddb/"$NAME_FILE-save"
rm -f ~/.cddb/"$NAME_FILE"
mv ~/.cddb/"$NAME_FILE-save" ~/.cddb/"$NAME_FILE"
fi
SIZE_NAME_FILE=$(stat -c%s ~/.cddb/"$NAME_FILE")
### Le fichier a les conditions requises, on passe à la lecture.
### Si pas de fichier, on quitte.
if [[ -f ~/.cddb/"$NAME_FILE" ]] && [[ "$SIZE_NAME_FILE" -ne 0 ]] ; then
echo ""
echo "Le fichier $NAME_FILE est présent, valide et bien encodé en UTF8."
echo ""
cat ~/.cddb/"$NAME_FILE" | awk '/^TTITLE/{sub("^TTITLE[0-9]+=","",$0);printf"%02d - %s\n",(i+++1),$0}'
echo ""
echo -n "Entrer Le Numéro du Titre (ou plusieurs ex: 10-11) :"
read -r num
echo "$num"
mplayer -ao alsa -noconfig all -nolirc -cdrom-device "$DEVICE" cdda://"$num" -cache 8000 -cache-min 80;
else
echo ""
echo "Le fichier $NAME_FILE n'a pas été rempli en infos."
echo "Le site est down, on quitte."
rm -f ~/.cddb/"$NAME_FILE"
sleep 2
fi
else
echo "Pas de CD Audio ... Terminé."
sleep 2
exit 0
fi
Coffret Queen 3 CD
Non présent :
Le fichier e00da811 est absent.
Le fichier e00da811 est présent, valide et bien encodé en UTF8.
01 - Bohemian rhapsody (1975)
02 - Another one bites the dust (1980)
03 - Killer Queen (1974)
04 - Fat bottomed girls (1978)
05 - Bicycle race (1978)
06 - You're my best friend (1976)
07 - Don't stop me now (1979)
08 - Save me (1980)
09 - Crazy little thing called love (1979)
10 - Somebody to love (1976)
11 - Now I'm here (1975)
12 - Good old fashioned lover boy (1977)
13 - Play the game (1980)
14 - Flash (1980)
15 - Seven seas of Rhye (1974)
16 - We will rock you (1977)
17 - We are the champions (1977)
Entrer Le Numéro du Titre (ou plusieurs ex: 10-11) :
Maintenant, qu'il est présent, on peut relancer le script pour vérifier.
Le fichier e00da811 est présent, valide et bien encodé en UTF8.
01 - Bohemian rhapsody (1975)
02 - Another one bites the dust (1980)
03 - Killer Queen (1974)
04 - Fat bottomed girls (1978)
05 - Bicycle race (1978)
06 - You're my best friend (1976)
07 - Don't stop me now (1979)
08 - Save me (1980)
09 - Crazy little thing called love (1979)
10 - Somebody to love (1976)
11 - Now I'm here (1975)
12 - Good old fashioned lover boy (1977)
13 - Play the game (1980)
14 - Flash (1980)
15 - Seven seas of Rhye (1974)
16 - We will rock you (1977)
17 - We are the champions (1977)
Entrer Le Numéro du Titre (ou plusieurs ex: 10-11) :
Le 3ème, le fichier est en charset=iso-8859-1
Le fichier 0a115111 est absent.
Le fichier 0a115111 est encodé en charset=iso-8859-1, on le passe en UTF8.
Le fichier 0a115111 est présent, valide et bien encodé en UTF8.
01 - The Show Must Go On (Queen & Elton John)
02 - Under Pressure (Queen & David Bowie Rah Mix)
03 - Barcelona (Freddie Mercury & Montserrat Caballé)
04 - Too Much Love Will Kill You
05 - Somebody To Love (Queen & George Michael)
06 - You Don't Fool Me
07 - Heaven For Everyone
08 - Las Palabras De Amor
09 - Driven By You (Brian May)
10 - Living On My Own (Freddie Mercury)
11 - Let Me Live
12 - The Great Pretender (Freddie Mercury)
13 - Princes Of The Universe
14 - Another One Bites The Dust (Queen & Wyclef Jean)
15 - No-One But You
16 - These Are The Days Of Our Lives
17 - Thank God It's Christmas
Entrer Le Numéro du Titre (ou plusieurs ex: 10-11) :
On vérifie ce 3ème CD :
Le fichier 0a115111 est présent, valide et bien encodé en UTF8.
01 - The Show Must Go On (Queen & Elton John)
02 - Under Pressure (Queen & David Bowie Rah Mix)
03 - Barcelona (Freddie Mercury & Montserrat Caballé)
04 - Too Much Love Will Kill You
05 - Somebody To Love (Queen & George Michael)
06 - You Don't Fool Me
07 - Heaven For Everyone
08 - Las Palabras De Amor
09 - Driven By You (Brian May)
10 - Living On My Own (Freddie Mercury)
11 - Let Me Live
12 - The Great Pretender (Freddie Mercury)
13 - Princes Of The Universe
14 - Another One Bites The Dust (Queen & Wyclef Jean)
15 - No-One But You
16 - These Are The Days Of Our Lives
17 - Thank God It's Christmas
Entrer Le Numéro du Titre (ou plusieurs ex: 10-11) :
Voilà
Dernière modification par Anonyme (30-06-2020 08:59:08)