Forum des développeurs  

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é.
Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Autres systèmes > Unix > Solaris

Solaris Forum d'entraide sur le système Solaris.

Réponse
 
Outils de la discussion
Vieux 21/03/2008, 13h01   #1 (permalink)
Nouveau membre du Club
 
Date d'inscription: août 2003
Messages: 73
Par défaut [SHELL] Probleme script "portée variable"

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"
Il faudrait que ca affiche "Fic : titi".
Mais ca affiche "Fic : toto".

Merci.
bidon est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/03/2008, 14h45   #2 (permalink)
Membre éprouvé
 
Avatar de jlliagre
 
Date d'inscription: juin 2007
Localisation: Paris
Messages: 404
Par défaut

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"
jlliagre est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 22/03/2008, 17h43   #3 (permalink)
Nouveau membre du Club
 
Date d'inscription: août 2003
Messages: 73
Par défaut

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.
bidon est déconnecté   Envoyer un message privé Réponse avec citation
Réponse

Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Autres systèmes > Unix > Solaris



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non
Navigation rapide


Fuseau horaire GMT +1. Il est actuellement 12h56.


Publiez vos articles, tutoriels et cours et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones. Nous contacter
Copyright 2000-2008 www.developpez.com - Legal informations