Contenu | Rechercher | Menus

Annonce

Ubuntu-fr.org recrute toujours de nouveaux modérateurs, avec de l'expérience.

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

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

#1 Le 18/04/2013, à 14:09

ar barzh paour

[Résolu] récupération d'une valeur

quel est le meilleur moyen pour récupérer une valeur modifiée par un shell "enfant"
explication :
shell1 envoie à shell2 une valeur
shell2 modifie cette valeur
je veux récupérer cette valeur dans shell1
dans l'exemple ci-dessous j'utilise un fichier, n'y a-t-il pas une autre solution ?

shell2 appelé par shell1

#!/bin/bash
#traitement du paramètre 1
echo "$1"|tr "[a-z]" "[A-Z]" >maj.txt

le shell1

#!/bin/bash
phrase="je suis en majuscule"
./shell2 "$phrase"
echo $phrase
cat maj.txt
read g

le résultat par exemple

je suis en majuscule
JE SUIS EN MAJUSCULE

Dernière modification par ar barzh paour (Le 18/04/2013, à 15:30)


Ubuntu 14.04 LTS 32 bits et Studio 14.04 LTS 64 bits
Ubuntu 16.04 32 bits en test (21 avril 2016)
Intel(R) Core(TM)2 Duo CPU     E7400  @ 2.80GHz

Hors ligne

#2 Le 18/04/2013, à 14:23

pingouinux

Re : [Résolu] récupération d'une valeur

Bonjour,

Voici une façon de faire :

$ cat shell1
#!/bin/bash
phrase="je suis en majuscule"
echo "$phrase"
echo "$(./shell2 "$phrase")"
read g

$ cat shell2
#!/bin/bash
#traitement du paramètre 1
echo "$1"|tr "[a-z]" "[A-Z]"

et une autre, plus simple :

$ cat shell1
#!/bin/bash
phrase="je suis en majuscule"
echo "$phrase"
./shell2 "$phrase"
read g

$ cat shell2
#!/bin/bash
#traitement du paramètre 1
echo "$1"|tr "[a-z]" "[A-Z]"

Dernière modification par pingouinux (Le 18/04/2013, à 16:47)

Hors ligne

#3 Le 18/04/2013, à 15:29

ar barzh paour

Re : [Résolu] récupération d'une valeur

salut pingouinux , toujours là quand il faut !
bien que je ne comprenne pas pourquoi et comment ça marche ça va m'aller
en utilisant
maj=`./shell2 "$phrase"`
je fais ensuite ce que je veux de maj
impec !!!
à plus et bonne fin de journée


Ubuntu 14.04 LTS 32 bits et Studio 14.04 LTS 64 bits
Ubuntu 16.04 32 bits en test (21 avril 2016)
Intel(R) Core(TM)2 Duo CPU     E7400  @ 2.80GHz

Hors ligne

#4 Le 18/04/2013, à 16:50

pingouinux

Re : [Résolu] récupération d'une valeur

J'ai ajouté des " " oubliés en #2.
Dans ton exemple, c'est

maj="`./shell2 "$phrase"`"

pour tenir compte des espaces supplémentaires éventuels dans phrase.

Hors ligne