Envoi paramètre a fonction dans Shell
Fermé
juliencolin54
Messages postés
217
Date d'inscription
dimanche 22 juillet 2012
Statut
Membre
Dernière intervention
1 octobre 2013
-
3 août 2012 à 22:24
dubcek Messages postés 18764 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 9 février 2025 - 4 août 2012 à 12:49
dubcek Messages postés 18764 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 9 février 2025 - 4 août 2012 à 12:49
A voir également:
- Envoi paramètre a fonction dans Shell
- Fonction si et - Guide
- Remettre parametre usine pc - Guide
- Classic shell windows 11 - Télécharger - Personnalisation
- Parametre windows - Guide
- Changer parametre dns - Guide
3 réponses
dubcek
Messages postés
18764
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
9 février 2025
5 624
Modifié par dubcek le 4/08/2012 à 08:12
Modifié par dubcek le 4/08/2012 à 08:12
hello
oui c'est possible
oui c'est possible
$ triple() { echo $((3*$1)) ; } $ triple 9 27 $ triple 33 99 $ triple 1 3 $
dubcek
Messages postés
18764
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
9 février 2025
5 624
4 août 2012 à 12:49
4 août 2012 à 12:49
non, on ne peut pas appeler une fonction C en shell.
Mais si on compile un main() on peut l'exécuter dans le shell
Mais si on compile un main() on peut l'exécuter dans le shell
$ cat triple.c #include <stdio.h> #include <stdlib.h> main(int argc, char *argv[]) { printf("%d\n", 3*atoi(argv[1])); } $ $ make triple cc triple.c -o triple $ ./triple 33 99 $ $ x=$(./triple 33) $ echo $x 99 $
juliencolin54
Messages postés
217
Date d'inscription
dimanche 22 juillet 2012
Statut
Membre
Dernière intervention
1 octobre 2013
55
4 août 2012 à 12:30
4 août 2012 à 12:30
En fait ma fonction est programmée en C.
Pour un triple cela donnerait :
Donc est ce que je peux appeler cette fonction depuis le shell pour lui envoyer un paramètre sans l'avoir codé avant dans le shell comme tu l'a fais ?
Imaginons que dans le shell je tape seulement :
Pour un triple cela donnerait :
#include <stdio.h> #include <stdlib.h> int triple(int n) { return 3*n }
Donc est ce que je peux appeler cette fonction depuis le shell pour lui envoyer un paramètre sans l'avoir codé avant dans le shell comme tu l'a fais ?
Imaginons que dans le shell je tape seulement :
triple(3)