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

_______________________________________________
gull mailing list
[email protected]
http://lists.alphanet.ch/mailman/listinfo/gull

Répondre à