[gull] Partager une variable entre deux scripts shell

Daniel Cordey dc at mjt.ch
Wed Nov 8 15:30:50 CET 2006


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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://forum.linux-gull.ch/pipermail/gull/attachments/20061108/1e5eb585/attachment.htm>


More information about the gull mailing list