[gull] Partager une variable entre deux scripts shell

Nicolas Borboën nbo at donax.ch
Wed Nov 8 16:15:45 CET 2006


Daniel Cordey wrote:
>
> On Wednesday 08 November 2006 15:13, Nicolas Borboën wrote:
>
> > Bonjour à tous,
>
> > J'ai deux scripts shell, l'un appel l'autre. J'aimerais récupérer une
>
> > variable de l'autre dans le premier, c'est possible?
>
> La notion de "variable(s) de retour" n'existe pas ne shell. Soit on
> recupere lce que le script imprime en stdout, soit on passe par des
> fichires. Deux exemples :
>
> #!/bin/sh
>
> # script principal
>
> # Recuperation de l'impression
>
> ret=$(./other_script toto titi)
>
> set ${ret}
>
> echo "arg1 : $1\targ2 : $2"
>
> #!/bin/sh
>
> # other_script
>
> # Re renverse les arguments
>
> echo "${2} ${1}"
>
> ###############################
>
> #!/bin/sh
>
> # Utilisation d'un fichier
>
> ./other_script /tmp/myfile
>
> # Je 'source' le fichier
>
> . /tmp/myfile
>
> echo "Le pere est ${father}, et le fils ${son}"
>
> #!/bin/sh
>
> # Je dis qui est le pere et le fils
>
> {
>
> echo "father=babar"
>
> echo "son=colargol"
>
> } >$1
>
> Toutefois, la seule valeur de retour que l'on puisse recupere en shell
> est une valeur comprise entre 0 et 255. Mais c'est tout !
>
> dc
>
Merci pour la réponse!

En fait je remarque que si je source le fichier2 dans le premier
j'obtiens le comportement voulu :-) (http://paste.ubuntu-nl.org/30637/)...



More information about the gull mailing list