Pb pour le passage d'arguments ds un shell !!

Fermé
matthieu - 13 nov. 2003 à 14:40
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 - 14 nov. 2003 à 09:29
Bonjour,

Dans un shell, j'ai plusieurs fonction du type menu() compilation() edition()...... que j'appel au cours du script .
L'utilisateur passe en argument le nom du fichier qu'il souhaite créer.
Le Pb c'es que l'argument , j'arrive a le récupérer avec un $1 dans le script mais pas dans les fonction menu()..... en fait il ne fait pas d'erreur mais $1= ensemble vide .....

Je pense que cela doit être un truc comme les variables locales ou globales du C.

Merci
A voir également:

3 réponses

jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 934
14 nov. 2003 à 09:29
Quelque chose du genre
#!/bin/sh
function test()
{
message="$1"
[ "X$message" = "X" ] && message="Hello World"
dialog --msgbox "$message" 5 $((${#message} + 5 ))
}
test "$1"

[johand@zoot] ~/src/bash $./test.sh "Salut le monde de plaisirs interdits "

devrait fonctionner, non?
Johan
The software said "Requires Windows98, Win2000, or better,
So I installed Unix.
1
Bsr,
les variables sont des elements locaux au shell ou elles sont definies;
les scripts lances à parir de celui-ci sont executés dans des shells séparés qui ne connaissent pas ces variables
as tu essayé de faire:
...
variable1=$1
export variable1
...
menu()
utilisation de variable1
0
impec ca marche ...... merci
0