Contenu | Rechercher | Menus

Annonce

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".
Test de l'ISO d'Ubuntu francophone : nous avons besoin de testeurs pour la version francophone d'Ubuntu 14.04. Liens et informations ici.

#1 Le 29/12/2012, à 17:21

Hernou

[résolu]console utiliser variable memorisée dans un autre bash

Bonjour à tous !
Voilà j'aimerais utiliser une variable, mémorisé dans un premier bash, dans le second, mais je ne trouve pas comment faire...
si vous pouvez m'aider, c'est cool.

Voici mes script ca vaudra mieux qu'une longue explication :

#ce fichier se situe ici : /home/usr/Documents/trucs/pcsx/test
#!/bin/bash
EMUPROFIL=epsxe
GAMEFILE=~/Documents/trucs/pcsx/SledStorm-PSX-PAL.bin
bash /home/$USER/Documents/trucs/pcsx/PCSXP
 
 
#celui-ci ici : /home/usr/Documents/trucs/pcsx/PCSXP
#!/bin/bash
qjoypad "$EMUPROFIL" &
pcsx -nogui -psxout -cdfile '/media/$USER/$GAMEFILE'
case $? in
0)  ;;
1) notify-send -i /home/$USER/Images/PS1.png "Impossible de lancer ce jeu" "Assurez-vous d'avoir bien branché vos périférques" ;;
-1) notify-send -i /home/$USER/Images/PS1.png "Impossible de lancer ce jeu" "erreur inatendue, Si vous n'êtes pas l'utilisateur de ce pc, vous devriez demander conseil à $LOGNAME" ;;
esac
killall qjoypad
 
 
#Et voici le résultat dans une console :
usr@karkatouf:~$ bash /home/usr/Documents/trucs/pcsx/test
Error opening CD-ROM plugin!
usr@karkatouf:~$ ^C
usr@karkatouf:~$ echo $GAMEFILE.$EMUPROFIL
.
usr@karkatouf:~$ 

Dernière modification par Hernou (Le 28/12/2013, à 00:43)

Hors ligne

#2 Le 29/12/2012, à 17:32

pingouinux

Re : [résolu]console utiliser variable memorisée dans un autre bash

Bonjour,
Dans le premier script, appeler le second comme ceci :

bash /home/$USER/Documents/trucs/pcsx/PCSXP "$EMUPROFIL" "$GAMEFILE"

Dans le second, mettre ceci en tête :

EMUPROFIL="$1"
GAMEFILE="$2"

En ligne

#3 Le 29/12/2012, à 17:43

Hernou

Re : [résolu]console utiliser variable memorisée dans un autre bash

ha enfin un truc intéressant !
hm seulement je ne comrpend pas bien je pense, j'ai donc édité le premier fichier de la sorte :

#!/bin/bash
EMUPROFIL=epsxe
GAMEFILE=~/Documents/trucs/pcsx/SledStorm-PSX-PAL.bin
bash /home/$USER/Documents/trucs/pcsx/PCSXP "$EMUPROFIL" "$GAMEFILE"
et le second ainsi :
#!/bin/bash
EMUPROFIL="$1"
GAMEFILE="$2"
qjoypad "$EMUPROFIL" &
pcsx -nogui -psxout -cdfile '/media/$USER/$GAMEFILE'
case $? in
0)  ;;
1) notify-send -i /home/$USER/Images/PS1.png "Impossible de lancer ce jeu" "Assurez-vous d'avoir bien branché vos périférques" ;;
-1) notify-send -i /home/$USER/Images/PS1.png "Impossible de lancer ce jeu" "erreur inatendue, Si vous n'êtes pas l'utilisateur de ce pc, vous devriez demander conseil à $LOGNAME" ;; 
esac
killall qjoypad

mais ca n'a pas marché $GAMEFILE et $EMUPROFIL répondent toujours par le neant, alors j'ai essayé comme çeci au cas ou j'aurais mal compris :

#!/bin/bash
EMUPROFIL="$EMUPROFIL"
GAMEFILE="$GAMEFILE"
qjoypad "$EMUPROFIL" &
pcsx -nogui -psxout -cdfile '/media/$USER/$GAMEFILE'
case $? in
0)  ;;
1) notify-send -i /home/$USER/Images/PS1.png "Impossible de lancer ce jeu" "Assurez-vous d'avoir bien branché vos périférques" ;;
-1) notify-send -i /home/$USER/Images/PS1.png "Impossible de lancer ce jeu" "erreur inatendue, Si vous n'êtes pas l'utilisateur de ce pc, vous devriez demander conseil à $LOGNAME" ;; 
esac
killall qjoypad

Mais la réponse est la même ca change rien...

Hors ligne

#4 Le 29/12/2012, à 17:44

Hernou

Re : [résolu]console utiliser variable memorisée dans un autre bash

et je ne comprend pas bien pourquoi mes messages sont envoyés en double... mistère mistère... ^^

Hors ligne

#5 Le 29/12/2012, à 17:51

pingouinux

Re : [résolu]console utiliser variable memorisée dans un autre bash

Il faut remplacer cette ligne du script n° 2

pcsx -nogui -psxout -cdfile '/media/$USER/$GAMEFILE'

par

pcsx -nogui -psxout -cdfile "/media/$USER/$GAMEFILE"

En effet, entre ' ', les variables d'environnement ne sont pas interprétées; il faut mettre des " ".

Autre solution, en reprenant les scripts du début : appeler le second script comme ceci :

source /home/$USER/Documents/trucs/pcsx/PCSXP

En ligne

#6 Le 29/12/2012, à 17:57

Hernou

Re : [résolu]console utiliser variable memorisée dans un autre bash

ha oui non c'est bon j'ai trouvé mon erreur
elle vient de :
media/$USER/$GAMEFILE
qui est traduit par : /media/usr//home/$USER/Documents/trucs/pcsx/PCSXP

media/$USER était en trop quoi

Dernière modification par Hernou (Le 28/12/2013, à 00:43)

Hors ligne

Haut de page ↑