![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
| Solaris Forum d'entraide sur le système Solaris. |
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Nouveau membre du Club
![]() Date d'inscription: août 2003
Messages: 73
|
Bonjour,
Je rencontre un petit problème de visibilité de variable qui est modifié dans une partie entre parenthèses : Code :
#!/bin/sh FIC=toto ( FIC=titi ) echo "Fic : $FIC" Mais ca affiche "Fic : toto". Merci. |
|
|
|
|
|
#2 (permalink) |
|
Membre éprouvé
![]() Date d'inscription: juin 2007
Localisation: Paris
Messages: 404
|
Ce comportement est normal. La variable est modifiée dans un sous-shell et ne modifie donc pas la valeur du shell principal.
Pourquoi as-tu mis des parenthèses ? Si c'est juste pour grouper des commandes, tu peux essayer çà: Code :
#!/bin/sh
FIC=toto
{
FIC=titi
}
echo "Fic : $FIC"
|
|
|
|
|
|
#3 (permalink) |
|
Nouveau membre du Club
![]() Date d'inscription: août 2003
Messages: 73
|
Merci.
Je vais essayer. C'est que j'ai besoin de modifier un script existant. L'exemple que j'ai mis dans le post est un résumé. Je ne voudrais pas remettre en cause tout ce qui a été fait. Les parenthèses sont je pense là pour grouper plusieurs lignes Après les parenthèses, il y a une redirection de la sortie d'erreur dans un fichier. Cordialement. |
|
|
|
![]() |
![]() |
||
[SHELL] Probleme script "portée variable"
|
||
| Outils de la discussion | |
|
|