Contenu | Rechercher | Menus

Annonce

Les adresses laposte.net ne permettent pas de recevoir nos emails. Vous êtes invité à changer d'adresse dans vos paramètres de compte à votre prochaine connexion.

Ubuntu 16.04 LTS
Commandez vos DVD et clés USB Ubuntu-fr !

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.

#1 Le 29/12/2012, à 16: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 27/12/2013, à 23:43)

Hors ligne

#2 Le 29/12/2012, à 16: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"

Hors ligne

#3 Le 29/12/2012, à 16: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, à 16: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, à 16: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

Hors ligne

#6 Le 29/12/2012, à 16: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 27/12/2013, à 23:43)

Hors ligne