Bienvenue visiteur (Inscription |  Connexion)
Qui est en ligne ?
Il y a : 15 utilisateurs en ligne, consultez le détail
Auteur Message
tamiel
#16 Message posté le : 22-11-2006 à 10:13:06


Hobbit


Forum : Inscrit
Association :
Arrivé(e) le : 17-10-2003
Nombre de messages : 1067
case $choix in
2)
choice = ${chaines[2]}
;;
esac

echo $choice

(il vaut mieux eviter d'ecraser une variable conditionnelle d'un case dans le case lui même.)



--Message édité par tamiel le 22-11-2006 à 10:14:36--


-------------------------------------
If you don't know, ask manpage !
flash6b
#17 Message posté le : 22-11-2006 à 21:14:17


Petit scarabée


Forum : Inscrit
Association :
Arrivé(e) le : 06-03-2006
Nombre de messages : 17
Bonsoir,
merci tamiel pour la syntaxe mais elle ne semble pas fonctionner.
J'ai déclaé mes variables sans tableau et j'utilise if:

if [ $choix -eq 2 ]; then
choix=$chaine2
.....
if
Ca semble marcher mais il me reste un petit problème dont je ne trouve pas la solution:
cat > enreg_vlc << "EOF"
export DISPLAY=:0.0 ; vlc -vvv $choix
EOF
Le fichier se crée bien mais il contient la chaine $choix au lieu du contenu de la
variable $choix.Existe t'il un moyen de faire ça avec cat ou autrement?
Pareil,pas moyen de trouver d'explication ou d'exemple sur la création d'un fichier contenant(entre autre)la valeur d'une variable dans un script bash.
Si quelqu'un sait.....
Merci.Ciao.
tamiel
#18 Message posté le : 22-11-2006 à 22:45:10


Hobbit


Forum : Inscrit
Association :
Arrivé(e) le : 17-10-2003
Nombre de messages : 1067
export DISPLAY=:0.0 ; vlc -vvv `echo $choix`

-------------------------------------
If you don't know, ask manpage !
flash6b
#19 Message posté le : 24-11-2006 à 10:41:44


Petit scarabée


Forum : Inscrit
Association :
Arrivé(e) le : 06-03-2006
Nombre de messages : 17
Merci tamiel ta syntaxe marche pour case.Pour cat,l'erreur était "EOF",il fallait
EOF.
J'envoie mon script(qui fonctionne),les remarques sont les bienvenues:
#!/bin/sh
enregistrement() {
at -f enreg_vlc $debut
}

stop() {
at -f stop_vlc $fin
}

chaine[1]='rtsp://mafreebox.freebox.fr/freeboxtv/stream?id=201 --sout file/ogg:flux.ogg'
chaine[2]='rtsp://mafreebox.freebox.fr/freeboxtv/stream?id=202 --sout file/ogg:flux.ogg'
chaine[3]='rtsp://mafreebox.freebox.fr/freeboxtv/stream?id=203 --sout file/ogg:flux.ogg'
chaine[4]='rtsp://mafreebox.freebox.fr/freeboxtv/stream?id=204 --sout file/ogg:flux.ogg'

nom="$USER"

echo 'Bonjour honorable' $nom

echo -n "Choisis ton horaire de début et de fin d'enregistrement:"; read debut fin
echo

echo "L'enregistrement commencera à $debut et se terminera à $fin"

sleep 1
echo

echo "Choisis la chaine à enregistrer:"
echo
echo " 2=france2 5=france5

3=france3 7=arte"; read choix

case $choix in
2) choix=${chaine[1]} ;;
3) choix=${chaine[2]} ;;
5) choix=${chaine[3]} ;;
7) choix=${chaine[4]} ;;
esac

cat > enreg_vlc << EOF
export DISPLAY=:0.0 ; vlc -vvv $choix
EOF

cat > stop_vlc << EOF
killall vlc
rm -f enreg_vlc
rm -f stop_vlc
EOF

enregistrement

stop

exit