« Graver en ligne de commande » : différence entre les versions

De Le Wiki du Forum-Debian.fr
Aller à la navigation Aller à la recherche
mAucun résumé des modifications
m (ajout de numérotation des lignes par <syntaxhighlight lang="bash" line='line'>)
 
(13 versions intermédiaires par 3 utilisateurs non affichées)
Ligne 5 : Ligne 5 :
Surtout ne pas hésiter à améliorer le script, il est sur le wiki rien que pour ça.
Surtout ne pas hésiter à améliorer le script, il est sur le wiki rien que pour ça.


<code bash>
<syntaxhighlight lang="sh" line='line'>
#!/bin/sh
#!/bin/sh
#-----------------------------------------------#
#-----------------------------------------------#
Ligne 26 : Ligne 26 :
LISTEAGRAVER=/tmp/liste_graver
LISTEAGRAVER=/tmp/liste_graver
TMPDIR=/tmp/gravure
TMPDIR=/tmp/gravure
GRAVURE='1'


ERR_INTEGR=101
ERR_INTEGR=101


choix_fichier_ () {
choix_fichier_ () {
  local FICHIER=''


# Fonction qui va choisir le fichier
# Fonction qui va choisir le fichier
Ligne 35 : Ligne 37 :
# On enregistre une liste des fichiers, le choix fait est reporté
# On enregistre une liste des fichiers, le choix fait est reporté
# dans la LISTEAGRAVER
# dans la LISTEAGRAVER
case $1 in
  case "$1" in
"iso" )
    'iso' )


;;
;;
"donnees" )
'donnees' )
    while [ "$FICHIER" != 0 ]; do
      echo 'Choisir la liste des fichiers à ajouter :'
                     
  while [ "$FICHIER" != 0 ]; do
      ls -a -p -X | sed = | sed 'N;s/\n/\t/' > $LISTE
 
      cat $LISTE
      ls -ApX | nl -n ln | tee "$LISTE"
      echo "------------------------------------------"
  echo '------------------------------------------'
      echo  "0 \t J'ai fini! \n"
  echo  "0 \t J'ai fini! \n"
      read CHOIX
  read CHOIX
      if [ "$CHOIX" = 0 ]; then
  if [ "$CHOIX" = 0 ]; then
  break
  break
      else
  else
  FICHIER=$(echo "$PWD/$(sed -n ${CHOIX}p $LISTE | awk -F"\t" '{print $2}')")
  FICHIER=$(echo "$PWD/$(sed -n ${CHOIX}p $LISTE | awk -F"\t" '{print $2}')")
  # Le nom du fichier est enregistré dans /tmp/liste_graver
  # Le nom du fichier est enregistré dans /tmp/liste_graver
  #S'il s'agit d'un répertoire, on propose de l'ajouter à la liste, ou d'aller dedans
  #S'il s'agit d'un répertoire, on propose de l'ajouter à la liste, ou d'aller dedans
 
 
  case $FICHIER in
  case "$FICHIER" in
    */ | .. ) echo "1) Changer de répertoire : $FICHIER"
          */ | .. ) echo "1) Changer de répertoire : $FICHIER"
      echo "2) Ajouter ce répertoire pour le graver"
    echo '2) Ajouter ce répertoire pour le graver'
      read R
    read R
      case $R in
    case $R in
1 ) cd $FICHIER ;;
    1 ) cd "$FICHIER" ;;
2 ) echo $FICHIER >> $LISTEAGRAVER ;;
    2 ) echo "$FICHIER" >> "$LISTEAGRAVER" ;;
      esac
        esac
      ;;
      ;;
   
        *) echo "$FICHIER" >> "$LISTEAGRAVER" ;;
   
    esac
    *) echo $FICHIER >> $LISTEAGRAVER ;;
    fi
esac
      fi    
  done
  done
;;
;;
Ligne 75 : Ligne 75 :


edite_ () {
edite_ () {
  while [ "$C" != 0 ]; do
  local C=1
  echo  "Voici la liste des fichiers à graver : \n"
  while [ "$C" != 0 ]; do
  cat $LISTEAGRAVER
  echo  "Voici la liste des fichiers à graver : \n"
  echo  "\n \n"
  cat "$LISTEAGRAVER"
  echo  "1)\t Ajouter des fichiers "
  echo  "\n \n"
  echo  "2)\t Enlever des fichiers"
  echo  "1)\t Ajouter des fichiers "
  echo  "0)\t J'ai fini! "
  echo  "2)\t Enlever des fichiers"
  read C
  echo  "0)\t J'ai fini! "
  case $C in
  read C
1 ) choix_fichier_ ;;
  case $C in
0 ) break ;;
  1 ) choix_fichier_ ;;
2 ) echo "Que supprimer?"
  0 ) break ;;
cat $LISTEAGRAVER | sed = | sed 'N;s/\n/\t/'
  2 ) echo 'Que supprimer?'
read SUPPR
        nl -n ln "$LISTEAGRAVER"
if  [ $SUPPR -le $(cat $LISTEAGRAVER |wc -l) ] && [ "$SUPPR" != "" ] ; then
  read SUPPR
sed ${SUPPR}d $LISTEAGRAVER > /tmp/listetmp
  if  [ "$SUPPR" -le $(wc -l < "$LISTEAGRAVER") ] && [ "$SUPPR" != "" ] ; then
mv /tmp/listetmp $LISTEAGRAVER
  sed ${SUPPR}d "$LISTEAGRAVER" > /tmp/listetmp
else
  mv /tmp/listetmp $LISTEAGRAVER
echo "*** Erreur, ce numéro n'est pas disponible ***"
  else
echo "*** Entrez un choix valide ***"
  echo "*** Erreur, ce numéro n'est pas disponible ***"
fi
  echo '*** Entrez un choix valide ***'
;;
  fi
* ) echo "Veuillez entrer un choix valide" ;;
  ;;
  esac
  * ) echo 'Veuillez entrer un choix valide' ;;
 
  esac
 
   done
   done
}
}
Ligne 107 : Ligne 108 :
# 1 sinon.
# 1 sinon.
verif_integrite_ () {
verif_integrite_ () {
  MD5_ISO=$(md5sum "$1" | awk '{print $1}')
  local MD5_ISO=$(md5sum "$1" | awk '{print $1}')
  echo "md5sum de l'iso : $MD5_ISO" >&2
  echo "md5sum de l'iso : $MD5_ISO" >&2
  MD5_CD=$(md5sum /dev/scd0 | awk '{print $1}')
  local MD5_CD=$(md5sum /dev/scd0 | awk '{print $1}')
  echo "md5sum du cd gravé: $MD5_CD" >&2
  echo "md5sum du cd gravé: $MD5_CD" >&2


  # Donne à la fonction sa valeur de retour
  # Donne à la fonction sa valeur de retour
  [ "$MD5_ISO" -eq "$MD5_CD" ]
  [ "$MD5_ISO" -eq "$MD5_CD" ]
}
}


grave_iso_ () {
grave_iso_ () {
  echo "Choisissez l'image iso à graver"
  echo "Choisissez l'image iso à graver"
  choix_fichier_ "iso"
  choix_fichier_ 'iso'
 
 
  if [ -n "$(cat $LISTEAGRAVER)" ]; then
  if [ -n "$(cat $LISTEAGRAVER)" ]; then
      echo "on va graver $(cat $LISTEAGRAVER)"
    echo "on va graver $(cat $LISTEAGRAVER)"
      echo  "L'image à graver fait: \t $(du -h $(cat $LISTEAGRAVER) | awk '{print $1}')"
    echo  "L'image à graver fait: \t $(du -h $(cat $LISTEAGRAVER) | awk '{print $1}')"
      echo  "Assurez-vous que votre cd/dvd est assez grand"
    echo  'Assurez-vous que votre cd/dvd est assez grand'
      echo "On y va? (O/N)"
    echo 'On y va? (O/N)'
      read CHOIX
    read CHOIX
      case $CHOIX in
    case $CHOIX in
        O | o )
      O | o )
            wodim -v dev=/dev/scd0 -data "$(cat $LISTEAGRAVER)"
        wodim -v dev=/dev/scd0 -data "$(cat $LISTEAGRAVER)"
            if ! verif_integrite_ "$(cat $LISTEAGRAVER)"; then
        if ! verif_integrite_ "$(cat $LISTEAGRAVER)"; then
              echo "Erreur: echec lors de la vérification d'intégrité" >&2
          echo "Erreur: echec lors de la vérification d'intégrité" >&2
              exit $ERR_INTEGR
          exit $ERR_INTEGR
            fi
        fi
            ;;
        ;;
        N | n ) echo "annulation de la gravure"
      N | n ) echo "annulation de la gravure"
            ;;
        ;;
  esac
    esac
 
  fi
  fi
}
}
grave_donnees_ () {
grave_donnees_ () {
choix_fichier_ "donnees"
choix_fichier_ 'donnees'
echo "on édite la liste qui est à graver :"
echo 'on édite la liste qui est à graver :'
edite_
edite_
echo "Quel est le nom du volume?"
echo 'Quel est le nom du volume ?'
read NOMVOLUME
read NOMVOLUME
if [ -n "$(cat $LISTEAGRAVER)" ]; then
if [ -n "$(cat $LISTEAGRAVER)" ]; then
###on lance la gravure
  ###on lance la gravure
echo "Creation de l'image à graver"
echo "Creation de l'image à graver"
genisoimage -R -r -J --hide-rr-moved -V "$NOMVOLUME" -o /tmp/$NOMVOLUME.iso $(cat $LISTEAGRAVER)
genisoimage -R -r -J --hide-rr-moved -V "$NOMVOLUME" -o /tmp/$NOMVOLUME.iso $(cat $LISTEAGRAVER)
Ligne 161 : Ligne 162 :
case $CHOIX in
case $CHOIX in
O | o )
O | o )
    wodim -v dev=/dev/scd0 -data /tmp/$NOMVOLUME.iso
  wodim -v dev=/dev/scd0 -data /tmp/$NOMVOLUME.iso
    if ! verif_integrite_ /tmp/$NOMVOLUME.iso; then
  if ! verif_integrite_ /tmp/$NOMVOLUME.iso; then
                              echo "Erreur: echec lors de la vérification d'intégrité" >&2
          echo "Erreur: echec lors de la vérification d'intégrité" >&2
                              exit $ERR_INTEGR
          exit $ERR_INTEGR
                            fi
        fi
;;
;;
N | n ) echo "annulation de la gravure"
N | n ) echo "annulation de la gravure"
Ligne 174 : Ligne 175 :


grave_audio_ () {
grave_audio_ () {
  mkdir -p $TMPDIR
  mkdir -p $TMPDIR
  [ -d $TMPDIR ]
  [ -d $TMPDIR ]
     if [ $? = 0 ]; then
     if [ $? = 0 ]; then
       choix_fichier_
       choix_fichier_
Ligne 182 : Ligne 183 :
       cd $TMPDIR
       cd $TMPDIR
       cp "$(cat $LISTEAGRAVER )" $TMPDIR
       cp "$(cat $LISTEAGRAVER )" $TMPDIR
      for i in *.[Mm][Pp]3; do mv "$i" `echo $i | tr '[A-Z]' '[a-z]'`; done
      for i in *.MP3; do mv "$i" "`basename "$i" .MP3`.mp3"; done
       echo "conversion des mp3 en wav"
       echo "conversion des mp3 en wav"
       for i in *.mp3; do
       for i in *.[Mm][Pp]3; do
        lame --verbose --decode "$i" "${i/%.mp3/.wav}";
        lame --verbose --decode "$i" "${i%.mp3}.wav";
       done
       done
       echo "conversion des ogg en wav"
       echo "conversion des ogg en wav"
Ligne 195 : Ligne 194 :
       normalize-audio --mix *.wav
       normalize-audio --mix *.wav
       for i in *.wav ; do
       for i in *.wav ; do
        echo "Traitement de ${i}"
        echo "Traitement de ${i}"
        sox "$i" "${i/%.wav/.cdr}"
        sox "$i" "${i/%.wav/.cdr}"
       done  
       done
#on affiche un avertissement sur la taille du fichier à graver
#on affiche un avertissement sur la taille du fichier à graver
       echo "Les données à graver font: \t $(du -h $TMPDIR | tail -n1 | awk '{print $1}')"
       echo "Les données à graver font: \t $(du -sh $TMPDIR | awk '{print $1}')"
       echo "Assurez-vous que votre cd est assez grand"
       echo 'Assurez-vous que votre cd est assez grand'
       echo "On y va? (O/N)"
       echo 'On y va? (O/N)'
       read CHOIX
       read CHOIX
       case $CHOIX in
       case $CHOIX in
        O | o )
        O | o )
 
          echo  " \tOn va maintenant graver!!! \n \n "
        echo  " \tOn va maintenant graver!!! \n \n "
          sleep 2
        sleep 2
          wodim -v -dev=/dev/scd0 -pad -dao -audio *.cdr
        wodim -v -dev=/dev/scd0 -pad -dao -audio *.cdr
        ;;
              ;;
        N | n ) echo 'annulation de la gravure'
            N | n ) echo "annulation de la gravure"
        ;;
        ;;
       esac
       esac
     
     
   fi
   fi
}
}


efface_disque_ () {
efface_disque_ () {
  local EFFACEMENT=1
while [ "$EFFACEMENT" != 0 ]; do
while [ "$EFFACEMENT" != 0 ]; do
echo "Comment souhaitez-vous effacer le disque?"
echo "Comment souhaitez-vous effacer le disque?"
Ligne 239 : Ligne 236 :
break
break
;;
;;
* ) echo "Veuillez entrer un choix valide" ;;
* ) echo 'Veuillez entrer un choix valide' ;;
esac
esac
done
done
}
}


echo "                     |//"
echo '                     |//'
echo "                   (o o)"
echo '                   (o o)'
echo "+-------------oOO----(_)---------------------+"
echo '+-------------oOO----(_)---------------------+'
echo "|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|"
echo '|--------------------------------------------|'
echo "|~~~~~~~~~~~~~~~~ ¤ BONJOUR ! ¤ ~~~~~~~~~~~~~|"
echo '|---------------- ¤ BONJOUR ! ¤ -------------|'
echo "|~~~~~ ¤ Ce Script va vous permettre ¤ ~~~~~~|"
echo '|----- ¤ Ce Script va vous permettre ¤ ------|'
echo "|~~~~~~~~~ ¤ de graver facilement ¤ ~~~~~~~~~|"
echo '|--------- ¤ de graver facilement ¤ ---------|'
echo "|~~~~~~~~~~~~~~ ¤ vos données ¤ ~~~~~~~~~~~~~|"
echo '|-------------- ¤ vos données ¤ -------------|'
echo "--------------------oOO----------------------+"
echo '+--------------------oOO---------------------+'
echo "                   |__|__|"
echo '                   |__|__|'
echo "                   || ||"
echo '                   || ||'
echo "                   ooO Ooo"
echo '                   ooO Ooo'
echo " \n \n \n "
echo " \n \n \n "


Ligne 272 : Ligne 269 :
2 ) grave_iso_ ;;
2 ) grave_iso_ ;;
3 ) efface_disque_ ;;
3 ) efface_disque_ ;;
0 )  
0 )
echo "
echo '
                         ''~''
                         ''~''
                         ( o o )
                         ( o o )
Ligne 284 : Ligne 281 :
                       \_)    ) /
                       \_)    ) /
                             (_/
                             (_/
"
'
exit 2  
exit 2
;;
;;
* ) echo "Veuillez entrer un choix valide" ;;
* ) echo 'Veuillez entrer un choix valide' ;;
esac
esac
done
done
Ligne 293 : Ligne 290 :


exit 0
exit 0
</code>
</syntaxhighlight>
 
[[Category:Scripts]]
[[Category:Scripts]]

Dernière version du 15 février 2017 à 09:29

Ce script doit permettre de graver en ligne de commande des disques de données, des images iso, et si possible de créer des cd audio (Cette dernière fonction n'est pas prête pour l'instant).

Attention, le script est en cours d'élaboration (les tests positifs ont été réalisé en bash).

Surtout ne pas hésiter à améliorer le script, il est sur le wiki rien que pour ça.

#!/bin/sh
#-----------------------------------------------#
# Script pour graver en console plus facilement #
# nécessite genisoimage, wodim,                 #
# éventuellement oggdec, sox,  lame, flac...    #
# pour les conversions de fichiers audio        #
#-----------------------------------------------#

#------------------ Reste à Faire : -----------------------------#
# Préciser les dépendances                                       #
# Ajouter une fonction pour vérifier que les dépendances sont là #
# Revoir la gravure de fichiers audio                            #
# Une meilleure vérification des données                         #
#----------------------------------------------------------------#

set -eu

LISTE=/tmp/liste
LISTEAGRAVER=/tmp/liste_graver
TMPDIR=/tmp/gravure
GRAVURE='1'

ERR_INTEGR=101

choix_fichier_ () {
  local FICHIER=''

# Fonction qui va choisir le fichier
# on quitte lorsque l'on rentre la valeur 0
# On enregistre une liste des fichiers, le choix fait est reporté
# dans la LISTEAGRAVER
  case "$1" in
    'iso' )

		;;
		'donnees' )
      echo 'Choisir la liste des fichiers à ajouter :'
		  while [ "$FICHIER" != 0 ]; do

      ls -ApX | nl -n ln | tee "$LISTE"
		  echo '------------------------------------------'
		  echo  "0 \t J'ai fini! \n"
		  read CHOIX
		  if [ "$CHOIX" = 0 ]; then
			  break
		  else
			  FICHIER=$(echo "$PWD/$(sed -n ${CHOIX}p $LISTE | awk -F"\t" '{print $2}')")
			  # Le nom du fichier est enregistré dans /tmp/liste_graver
			  #S'il s'agit d'un répertoire, on propose de l'ajouter à la liste, ou d'aller dedans

			  case "$FICHIER" in
          */ | .. ) echo "1) Changer de répertoire : $FICHIER"
				    echo '2) Ajouter ce répertoire pour le graver'
				    read R
				    case $R in
					    1 ) cd "$FICHIER" ;;
					    2 ) echo "$FICHIER" >> "$LISTEAGRAVER" ;;
				        esac
				      ;;
			        *) echo "$FICHIER" >> "$LISTEAGRAVER" ;;
			    esac
		    fi
		   done
		;;
	esac
}


edite_ () {
  local C=1
  while [ "$C" != 0 ]; do
	  echo  "Voici la liste des fichiers à graver : \n"
	  cat "$LISTEAGRAVER"
	  echo  "\n \n"
	  echo  "1)\t Ajouter des fichiers "
	  echo  "2)\t Enlever des fichiers"
	  echo  "0)\t J'ai fini! "
	  read C
	  case $C in
		  1 ) choix_fichier_ ;;
		  0 ) break ;;
		  2 ) echo 'Que supprimer?'
        nl -n ln "$LISTEAGRAVER"
			  read SUPPR
			  if  [ "$SUPPR" -le $(wc -l < "$LISTEAGRAVER") ] && [ "$SUPPR" != "" ] ; then
				  sed ${SUPPR}d "$LISTEAGRAVER" > /tmp/listetmp
				  mv /tmp/listetmp $LISTEAGRAVER
			  else
				  echo "*** Erreur, ce numéro n'est pas disponible ***"
				  echo '*** Entrez un choix valide ***'
			  fi
			  ;;
		  * ) echo 'Veuillez entrer un choix valide' ;;
	  esac

   done
}

# controle de l'image
# Retourne 0 si le CD gravé est conforme à l'image ISO,
# 1 sinon.
verif_integrite_ () {
  local MD5_ISO=$(md5sum "$1" | awk '{print $1}')
  echo "md5sum de l'iso : $MD5_ISO" >&2
  local MD5_CD=$(md5sum /dev/scd0 | awk '{print $1}')
  echo "md5sum du cd gravé: $MD5_CD" >&2

  # Donne à la fonction sa valeur de retour
  [ "$MD5_ISO" -eq "$MD5_CD" ]
}

grave_iso_ () {
  echo "Choisissez l'image iso à graver"
  choix_fichier_ 'iso'

  if [ -n "$(cat $LISTEAGRAVER)" ]; then
    echo "on va graver $(cat $LISTEAGRAVER)"
    echo  "L'image à graver fait: \t $(du -h $(cat $LISTEAGRAVER) | awk '{print $1}')"
    echo  'Assurez-vous que votre cd/dvd est assez grand'
    echo 'On y va? (O/N)'
    read CHOIX
    case $CHOIX in
      O | o )
        wodim -v dev=/dev/scd0 -data "$(cat $LISTEAGRAVER)"
        if ! verif_integrite_ "$(cat $LISTEAGRAVER)"; then
          echo "Erreur: echec lors de la vérification d'intégrité" >&2
          exit $ERR_INTEGR
        fi
        ;;
      N | n ) echo "annulation de la gravure"
        ;;
    esac
  fi
}

grave_donnees_ () {
	choix_fichier_ 'donnees'
	echo 'on édite la liste qui est à graver :'
	edite_
	echo 'Quel est le nom du volume ?'
	read NOMVOLUME
	if [ -n "$(cat $LISTEAGRAVER)" ]; then
	  ###on lance la gravure
		echo "Creation de l'image à graver"
		genisoimage -R -r -J --hide-rr-moved -V "$NOMVOLUME" -o /tmp/$NOMVOLUME.iso $(cat $LISTEAGRAVER)
		if [ ! -f /tmp/$NOMVOLUME.iso ]; then
			echo "Erreur lors de la création de l'image"
			exit 666
		fi
		#on affiche un avertissement sur la taille du fichier à graver
		echo  "L'image à graver fait: \t $(du -h /tmp/$NOMVOLUME.iso | awk '{print $1}')"
		echo  "Assurez-vous que votre cd/dvd est assez grand"
		echo "On y va? (O/N)"
		read CHOIX
		case $CHOIX in
			O | o )
			  wodim -v dev=/dev/scd0 -data /tmp/$NOMVOLUME.iso
			  if ! verif_integrite_ /tmp/$NOMVOLUME.iso; then
          echo "Erreur: echec lors de la vérification d'intégrité" >&2
          exit $ERR_INTEGR
        fi
			;;
			N | n ) echo "annulation de la gravure"
			;;
		esac
	fi
}

grave_audio_ () {
  mkdir -p $TMPDIR
  [ -d $TMPDIR ]
    if [ $? = 0 ]; then
      choix_fichier_
      edite_
      echo  "\n \n On va maintenant convertir les fichiers pour les graver"
      cd $TMPDIR
      cp "$(cat $LISTEAGRAVER )" $TMPDIR
      echo "conversion des mp3 en wav"
      for i in *.[Mm][Pp]3; do
        lame --verbose --decode "$i" "${i%.mp3}.wav";
      done
      echo "conversion des ogg en wav"
      oggdec *.ogg
      echo "conversion des flac en wav"
      flac --decode *.flac
      echo "normalisation"
      normalize-audio --mix *.wav
      for i in *.wav ; do
        echo "Traitement de ${i}"
        sox "$i" "${i/%.wav/.cdr}"
      done
#on affiche un avertissement sur la taille du fichier à graver
      echo "Les données à graver font: \t $(du -sh $TMPDIR | awk '{print $1}')"
      echo 'Assurez-vous que votre cd est assez grand'
      echo 'On y va? (O/N)'
      read CHOIX
      case $CHOIX in
        O | o )
          echo  " \tOn va maintenant graver!!! \n \n "
          sleep 2
          wodim -v -dev=/dev/scd0 -pad -dao -audio *.cdr
        ;;
        N | n ) echo 'annulation de la gravure'
        ;;
      esac
   fi
}

efface_disque_ () {
  local EFFACEMENT=1
	while [ "$EFFACEMENT" != 0 ]; do
		echo "Comment souhaitez-vous effacer le disque?"
		echo  "1 \t Effacement complet"
		echo  "2 \t Effacement rapide "
		echo  "0 \t Annuler "
		read EFFACEMENT

		case $EFFACEMENT in
			2 )
				echo "C'est parti pour un effacement rapide :"
				sleep 1
				wodim blank=fast
				break
			;;
			1 )
				echo "C'est parti pour un effacement complet :"
				sleep 1
				wodim blank=all
				break
			;;
			* ) echo 'Veuillez entrer un choix valide' ;;
		esac
	done
}

echo '                     |//'
echo '                    (o o)'
echo '+-------------oOO----(_)---------------------+'
echo '|--------------------------------------------|'
echo '|---------------- ¤ BONJOUR ! ¤ -------------|'
echo '|----- ¤ Ce Script va vous permettre ¤ ------|'
echo '|--------- ¤ de graver facilement ¤ ---------|'
echo '|-------------- ¤ vos données ¤ -------------|'
echo '+--------------------oOO---------------------+'
echo '                   |__|__|'
echo '                    || ||'
echo '                   ooO Ooo'
echo " \n \n \n "

while [ "$GRAVURE" != 0 ]; do
	echo  "Que souhaitez-vous faire? (Entrez le numéro de votre choix) \n \n"
	echo  "1 \t Un disque de données "
	#echo  "2 \t Un disque audio "
	echo  "2 \t Graver une image iso "
	echo  "3 \t Effacer le disque "
	echo  "0 \t Quitter "
	read GRAVURE

case $GRAVURE in
	1 ) grave_donnees_ ;;
	#2 ) grave_audio_ ;;
	2 ) grave_iso_ ;;
	3 ) efface_disque_ ;;
	0 )
		echo '
                         ''~''
                        ( o o )
+------------------.oooO--(_)--Oooo.------------------+
|                                                     |
|                      À BIENTÔT                      |
|                    .oooO                            |
|                    (   )   Oooo.                    |
+---------------------\ (----(   )--------------------+
                       \_)    ) /
                             (_/
'
		exit 2
	;;
	* ) echo 'Veuillez entrer un choix valide' ;;
esac
done


exit 0