Bonsoir.
Pour lancer une commande externe à un programme c, il semblerait que l’on puisse utiliser les fonctions exec. Cependant, j’ai un peu de mal avec le man en anglais… Quelles différences y a t-il entre execl, execlp, execle, evecv …
À ce que je crois avoir compris, les fonctions avec un “p” prennent en argument le chemin complet vers l’éxécutable désiré (le path ). Mais la deuxieme partie, elle correspond à quoi? les arguments passés à notre programme?
Merci pour les éclaircissements.
edit :
après re-re-relecture, je crois comprendre que dans les premiers cas (execl, execlp, execle ), les arguments suivants sont ceux passés au fichier que l’on veut éxécuter, dans les autres cas (execv() ), il s’agit des arguments passés au programme que l’on écrit. Mais comment récupérer ces arguments alors?
edit2 : est-ce bien avec execv(“commande”, argv); ?
Autre question, pourquoi tant de fonctions différentes, alors qu’elles semble très similaires?