Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/03/2011, 09h36   #1
Membre confirmé
 
Avatar de saymoneu
 
Homme Simon C.
Développeur Web
Inscription : avril 2010
Messages : 127
Détails du profil
Informations personnelles :
Nom : Homme Simon C.
Âge : 23
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : avril 2010
Messages : 127
Points : 271
Points : 271
Par défaut Visibilité des variables.

Bonjour,

J'ai un problème concernant la visibilité des variables dans mon code. Voilà le code:


Code :
1
2
3
4
5
6
7
#!/bin/bash
 
for cpt in `seq 1 1000`;
do
	expect1.sh
	exit
done

L'expect:

Code :
1
2
3
#!/usr/bin/expect -f
 
spawn ssh-magasin $cpt

ssh-magasin est un script qui fonctionne très bien, j'ai vérifié. Le problème retourné est
"can't read "cpt": no such variable
while executing
"spawn ssh-magasin $cpt"
(file /home/saymoneu/bin/expect1.sh" line 3)


Chose incroyable: ca marchait parfaitement hier. Aujourd'hui ça lui plait plus alors que je n'ai rien changé au code... Si quelqu'un a un bon lien expliquant la visibilité des variables en shell, ou est capable de m'expliquer, merci de vous manifester je tourne en rond depuis 2h.

Bonne journée
saymoneu est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 04/03/2011, 11h02   #2
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 534
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 534
Points : 7 743
Points : 7 743
c'est tout à fait normal, les variables sont locales

par contre pour passer une variable à un autre script il faut la lui donner en paramètre, et utiliser le paramètre dans le second script.

exemple :

Code :
1
2
3
#!/bin/bash
e=toto
titi.sh $e
Code :
1
2
3
#!/usr/bin/bash
e=$1
commande $e
les paramètres sont notés $1, $2, $3 et ainsi de suite.
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 04/03/2011, 11h05   #3
Membre confirmé
 
Avatar de saymoneu
 
Homme Simon C.
Développeur Web
Inscription : avril 2010
Messages : 127
Détails du profil
Informations personnelles :
Nom : Homme Simon C.
Âge : 23
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : avril 2010
Messages : 127
Points : 271
Points : 271
Merci pour la réponse, ca fonctionne
saymoneu est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h44.


 
 
 
 
Partenaires

Hébergement Web