Bash/shell : export d'une variable que pour un sous processus

gnugo -  
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,



Je voudrais savoir s'il existe un moyen simple de définir une variable pour un sous processus particulier, et seulement pour lui

Par exemple :

$ VAR=lalala
$ export_pour_fils VAR=autrechose
$ ./programme &
*** programme démarré en utilisant la variable VAR=autrechose
$ echo $VAR
lala
$


J'espère que vous m'aurez compris, merci d'avance pour votre aide :)
A voir également:

3 réponses

gnugo
 
PS : l'idée est de faire cela pour donner une variable $LANG différente à un programme, sans modifier $LANG dans le terminal en cours.
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
hello
$ VAR=lalala
$ ( export VAR=autrechose; ./programme ) &
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 430
 
Salut,

Ça marche aussi avec une fonction et une déclaration locale :

$ cat foo.sh 
#!/bin/bash
echo "LANG = ${LANG}"

$ ./foo.sh
LANG = fr_FR.UTF-8

$ loc (){ local LANG=us_US.UTF-8; ./foo.sh ; }

$ loc
LANG = us_US.UTF-8

$ ./foo.sh
LANG = fr_FR.UTF-8
0