Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 16/08/2006, à 09:21

Compte anonymisé

Script de Gravure

Salut,
J'essaie d'utiliser le script Outside.

Voila, j'ai un problème.Le script est bien fonctionnel sauf qu'il ne copie pas les *.wav dans /home/users/outside mais à l'extèrieure donc dans /home/user/ ce qui en résulte par :
cdrecord: No such file or directory. Cannot open '/home/patrick/outside/*.wav'.

Par contre si je colle le script dans ousite et que je l'exécute pas de problème.
Si je crée un lien symbolique de celui-ci dans mon bureau, de nouveau les fichiers *.wav se retrouve à l'exterieur de outside.
J'avoue que je planche. J'ai changé les DIR et chose bizarre les fichiers
se retrouvent toujours au même endroit.
Une aide me serait forte utile.
Merci d'avance et encore Bravo à l'auteur
Salut.

Voila le script :
#!/bin/sh
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# If you want to receive a copy of the GNU General Public License
# write to the Free Software Foundation, Inc.,
# 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
#
# This program requires the following tools : cdrecord, mkisofs , mpg123
# if you don't have them, you won't be able to use this program.
# if you want to install them then try to get them with apt-get, urmpi or anything else...
##################################OUTSIDEISO####################################
function outsideiso () {
echo "Bienvenue sur le programme Outside ISO "
echo -n "Quelle vitesse de gravure souhaitez vous utiliser ?"
read vitesse
echo -n "ATTENTION, tous les fichiers suivants seront gravés :"
cd /home/$USER/outside
ls -a
echo -n "Etes-vous sur de vouloir graver tous ces fichiers ? (y/n)    "
read verification
if [ $verification = y ] ; then
cdrecord -v -eject -dao speed=$vitesse dev=/dev/hdc /home/$USER/outside/*
else
exit 0
fi
echo -n "Désirez vous purger le dossier de gravure  (y/n) ? ATTENTION, tous les fichiers seront effacés définitivement!!!    "
read purge
if [ $purge = y ] ; then
rm -rf /home/$USER/outside/*
fi
echo "Merci d'avoir utilisé Outside !";
}
################################################################################

#################################OUTSIDEDATA####################################
function outsidedata () {
echo "Bienvenue sur le programme de Outside Data "
echo -n "Quelle vitesse de gravure souhaitez vous utiliser ?    "
read vitesse
echo -n "ATTENTION, tous les fichiers suivants seront gravés sur le disque"
cd /home/$USER/outside
ls -a
echo -n "Etes-vous sur de vouloir graver tous ces fichiers ? (y/n)    "
read answer
if [ $answer = y ] ; then
mkisofs -J -no-iso-translate -D -R -l -v -allow-multidot -o image /home/$USER/outside/*
else
exit 0
fi
test -e /home/$USER/outside/image
if [ $? = 1 ] ; then
echo "La conversion de vos données en fichier image a échoué"
exit 0
else
cdrecord -v -eject speed=$vitesse -dao dev=/dev/hdc -data image
rm -rf /home/$USER/outside/image
fi
echo "Désirez vous purger le dossier de gravure  (y/n) ? ATTENTION, tous les fichiers seront effacés définitivement!!!    "
read purge
if [ $purge = y ] ; then
rm -rf /home/$USER/outside/*
fi
echo "Merci d'avoir utilisé Outside !";
}
################################################################################

#################################OUTSIDEAUDIO###################################
function outsideaudio () {
echo "Bienvenue sur le programme Outside Audio "
echo -n "Quelle vitesse de gravure souhaitez vous utiliser ?    "
read vitesse
echo -n "ATTENTION, tous les fichiers suivants seront convertis en .Wav et gravés sur le disque"
cd /home/$USER/outside
ls -a
echo -n "Etes-vous sur de vouloir graver tous ces fichiers ? (y/n)    "
read answer
if [ $answer = y ] ; then
cd /home/$USER/outside/
for i in *.mp3; do mv "$i" `echo $i | tr ' ' '_'`; done
for i in *.mp3; do mpg123 -w `basename $i .mp3`.wav $i; done
cdrecord -v -dao -eject speed=$vitesse dev=/dev/hdc -pad -audio /home/$USER/outside/*.wav
else
exit 0
fi
echo -n "Désirez-vous supprimer les fichiers .wav qui ont été créés lors de la gravure? (y/n)    "
read suppwav
if [ $suppwav = y ] ; then
rm -rf /home/$USER/outside/*.wav
fi
echo "Désirez vous purger le dossier de gravure  (y/n) ? ATTENTION, tous les fichiers seront effacés définitivement!!!    "
read purge
if [ $purge = y ] ; then
rm -rf /home/$USER/outside/*
fi
echo "Merci d'avoir utilisé Outside";
}
################################################################################

##################################OUTSIDERASE##################################
function outsiderase () {
echo -n "Insérez le cd dans le lecteur et appuyez sur n'importe quelle touche    "
read insert
case $insert in
*);;
esac
echo -n "A quelle vitesse souhaitez-vous effacer le cd ?    "
read vitesse
echo -n "ATTENTION, le contenu du CD sera totalement effacé, êtes vous sur de vouloir continuer (y/n)    "
read answer
case $answer in
y)
;;
n)
exit 0;;
esac
echo "Souhaitez vous utiliser :"
echo "1- La méthode rapide ?"
echo "2- La méthode complète ?    "
echo -n "Choix (1/2):    "
read choix
case $choix in
1)
cdrecord -v -eject speed=$vitesse dev=/dev/hdc -blank=fast;;
2)
cdrecord -v -eject speed=$vitesse dev=/dev/hdc -blank=all;;
esac
echo "Merci d'avoir utilisé Outside";
}
#############################OUTSIDECOPIEAUDIO###################################
function outsidecopieaudio () {
echo -n "Insérez le cd à copier dans le graveur et appuyez sur Entrée"
read attente
case $attente in
*);;
esac
echo -n "Vos fichiers vont être extraits dans le dossier Outside en .wav, Appuyez sur Entrée pour continuer"
read attente2
case $attente2 in
*);;
esac
cdda2wav -v255 -B -D/dev/hdc
echo -n "Vos fichiers ont été extraits, insérez un cd vierge dans le graveur et appuyez sur Entrée"
read attente3
case $attente3 in
*);;
esac
echo -n "Quelle vitesse de gravure souhaitez vous utiliser?"
read vitesse
cdrecord -v -dao -eject speed=$vitesse dev=/dev/hdc -pad -audio /home/$USER/outside/*.wav
echo -n "Désirez-vous supprimer les fichiers .wav qui ont été créés lors de la gravure? (y/n)    "
read suppwav
if [ $suppwav = y ] ; then
rm -rf /home/$USER/outside/*.wav
fi
echo "Désirez vous purger le dossier de gravure  (y/n) ? ATTENTION, tous les fichiers seront effacés définitivement!!!    "
read purge
if [ $purge = y ] ; then
rm -rf /home/$USER/outside/*
fi
echo "Merci d'avoir utilisé Outside";
}
##################################MAIN PROGRAM#################################
echo "Bonjour $USER et Bienvenue sur Outside"
sleep 1
echo "                                                                       "
echo "Vérification de la présence des outils nécéssaires à la gravure..."
if [ -x /usr/bin/cdrecord ] ; then
    echo "cdrecord: OK"
else
echo "cdrecord ne semble pas installé sur votre machine, la gravure est donc impossible,"
exit 0
fi
if [ -x /usr/bin/mpg123 ] ; then
echo "mpg123: OK"
else
echo "mpg123 ne semble pas installé sur votre machine, la gravure de cds audio sera donc impossible"
fi
if [ -x /usr/bin/mkisofs ] ; then
echo "mkisofs: OK"
else
echo "mkisofs ne semble pas installé sur votre machine, la gravure de cds de données sera donc impossible"
fi
if [ -x /usr/bin/cdda2wav ] ; then
echo "cdda2wav :OK"
else
echo "cdda2wav ne semble pas installé sur votre machine, la copie de cds audios sera donc impossible"
fi
echo "Vérification de l'existence d'un dossier temporaire pour la gravure..."
test -d /home/$USER/outside
case $? in
1)echo "Un dossier nommé outside a été créé dans votre dossier User"
mkdir /home/$USER/outside;;
0)echo "Dossier outside : OK";;
esac
echo "                                                                       "
echo "Placez tous les fichiers que vous désirez graver dans le dossier outside"
echo "                                                                        "
echo -n "Appuyer sur Entrée lorsque vous avez terminé cette opération    "
read placement
case $placement in
*)
;;
esac
echo "Quel type de CD désirez-vous graver ?"
echo "1= Fichier Image"
echo "2= Cd de données"
echo "3= Cd Audio à partir de Mp3"
echo "4= Effacer un CD RW"
echo "5= Copier un CD Audio"
echo -n "Choix:    "
read cdtype
case $cdtype in
1)
outsideiso;;
2)
outsidedata;;
3)
outsideaudio;;
4)
outsiderase;;
5)
outsidecopieaudio;;
esac

Dernière modification par Compte anonymisé (Le 16/08/2006, à 09:23)

#2 Le 17/08/2006, à 00:42

gene69

Re : Script de Gravure

if [ $verification = y ]
évite, pour moi il faut faire if [ "_$verification" == "_y" ]


ton message est super confus... par exemple il aurait été agréable que tu localises la fonction qui ne fonctionne pas... je n'irais pas jusqu'à la ligne mais celà serai d'un grand secours.

j'imagine que ton problème vient de ses lignes:

cd /home/$USER/outside/
for i in *.mp3; do mv "$i" `echo $i | tr ' ' '_'`; done
for i in *.mp3; do mpg123 -w `basename $i .mp3`.wav $i; done

on bein insere un ls pour débuger apres le cd
genre

cd gnagnagna && ls
for i in *.mp3; do mv "$i" `echo $i `; done
#...
# bon maintenant on vois les fichiers qui sont vu par la complétion...
for i in *.mp3; do mpg123 -w `basename $i .mp3`.wav $i; done
# tu es sur de l'espace?

Dernière modification par gene69 (Le 17/08/2006, à 00:43)


Quand le berger est lâche, le loup chie de la laine.
A (draft) guide to UFO Alien-Invasion

Hors ligne