Transmettre un parametre
Résolu/Fermé
sym59
Messages postés
40
Date d'inscription
jeudi 10 mai 2012
Statut
Membre
Dernière intervention
11 août 2015
-
17 sept. 2013 à 10:55
sym59 Messages postés 40 Date d'inscription jeudi 10 mai 2012 Statut Membre Dernière intervention 11 août 2015 - 17 sept. 2013 à 14:47
sym59 Messages postés 40 Date d'inscription jeudi 10 mai 2012 Statut Membre Dernière intervention 11 août 2015 - 17 sept. 2013 à 14:47
A voir également:
- Transmettre un parametre
- Paramètre story facebook - Guide
- Netflix paramètre compte - Guide
- Remettre parametre usine pc - Guide
- Parametre windows - Guide
- Changer parametre dns - Guide
5 réponses
zipe31
Messages postés
36402
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 418
17 sept. 2013 à 11:50
17 sept. 2013 à 11:50
Salut,
$ cat foo.sh
#!/bin/bash
#set -x
A="$1"
B="$2"
fvar1 () {
echo "${FUNCNAME} : $A"
}
fvar2 () {
echo "${FUNCNAME} : $A"
}
fvar3 () {
echo "${FUNCNAME} : $A"
}
fvar4 () {
echo "${FUNCNAME} : $A"
}
fvar5 () {
echo "${FUNCNAME} : $A"
}
multi_f () {
for i in $(seq "$B")
do
echo -n "${FUNCNAME} : "; fvar${i} $A
done
}
fvar1 "$A"
fvar3 "$A"
multi_f "$A" "$B"
$ ./foo.sh "Est une fonction" 5
fvar1 : Est une fonction
fvar3 : Est une fonction
multi_f : fvar1 : Est une fonction
multi_f : fvar2 : Est une fonction
multi_f : fvar3 : Est une fonction
multi_f : fvar4 : Est une fonction
multi_f : fvar5 : Est une fonction
$
Utilisateur anonyme
17 sept. 2013 à 14:34
17 sept. 2013 à 14:34
salut,
function test_multi_function {
> fvar1 "$1"
> fvar2 "$1"
>}
$ var="est une fonction"
$ test_multi_function "$var"
sym59
Messages postés
40
Date d'inscription
jeudi 10 mai 2012
Statut
Membre
Dernière intervention
11 août 2015
17 sept. 2013 à 11:03
17 sept. 2013 à 11:03
J'ai trouvé une solution qui marche mais qui ne me plait pas beaucoup car rajoute beaucoup de lignes de code :
Quelqu'un aurait une solution plus simple?
$function fvar1 {
$ if [ $# -eq 1 ];then
$ echo "fvar1 : $1"
$ else
$ echo "fvar1 : $var2"
$ fi
$}
$var="est une fonction"
$test_multi_function $var #test_multi_function inchangé, cf sujet de forum
fvar1 : est une fonction
fvar2 : est une fonction
$var="est une fonction"
$fvar1 $var
fvar1 : est une fonction
Quelqu'un aurait une solution plus simple?
sym59
Messages postés
40
Date d'inscription
jeudi 10 mai 2012
Statut
Membre
Dernière intervention
11 août 2015
17 sept. 2013 à 14:25
17 sept. 2013 à 14:25
Bonjour,
la deuxième ligne de commande #set -x a une importance ou c'est juste un commentaire? Je n'ai aucun changement avec ou sans...
${FUNCNAME} ne renvoie rien du tout
et la commande $ ./foo.sh "Est une fonction" 5 me renvoie :
PS : la commande ./foo.sh "Est une fonction" 5 a été placé dans un fichier .sh différent de foo.sh (sinon il continue à l'infinie, j'ai testé ^^)
la deuxième ligne de commande #set -x a une importance ou c'est juste un commentaire? Je n'ai aucun changement avec ou sans...
${FUNCNAME} ne renvoie rien du tout
et la commande $ ./foo.sh "Est une fonction" 5 me renvoie :
fvar1 : Est une fonctionaprès modifications de fvar1 et fvar3 (j'ai juste remplacé ${FUNCNAME} par le nom de la fonction
fvar3 : Est une fonction
seq: not found
PS : la commande ./foo.sh "Est une fonction" 5 a été placé dans un fichier .sh différent de foo.sh (sinon il continue à l'infinie, j'ai testé ^^)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
sym59
Messages postés
40
Date d'inscription
jeudi 10 mai 2012
Statut
Membre
Dernière intervention
11 août 2015
Modifié par sym59 le 17/09/2013 à 14:49
Modifié par sym59 le 17/09/2013 à 14:49
https://forums.commentcamarche.net/forum/affich-28730295-transmettre-un-parametre#4
Impeccable =)
Merci!
Impeccable =)
Merci!