Recup un argument de commande linux en C
Résolu
sirinabb
-
sirinabb -
sirinabb -
Bonjour,
je suis en stage et ma tache consiste à ajouter une fonctionnalité à un programme deja developpé...mon problème est que le code que j'ai entre les mains ne récupère pas un chemin donnée en paramètres or c ce que je doit faire :(
je suis très inquiète
merci merci mercii d'avance pour votre aide
je suis en stage et ma tache consiste à ajouter une fonctionnalité à un programme deja developpé...mon problème est que le code que j'ai entre les mains ne récupère pas un chemin donnée en paramètres or c ce que je doit faire :(
je suis très inquiète
merci merci mercii d'avance pour votre aide
4 réponses
-
int main(int ac, char **av) { char *argument; argument = recup_arg("-d", ac, av); } char *recup_arg(char *cmp, int ac, char **av) { int i = 1; while (i < ac) { if (strcmp(av[i], cmp) == 0 && i + 1 < ac) return (strdup(av[i + 1])); i++; } return (NULL); }
Si je ne me trompe pas, cela devrait fonctionner. la chaine "argument" possède le contenu de ce qui est en paramètre après "-d" grace à "recup_argument" (notons que c'est ici une fonction générique qui pourra être réutilisée pour d'autres options).
argument est NULL si -d n'est pas présent ou si il n'y a pas d'argument après. -
Si tu as les sources, c'est simple, il suffit de récupérer les arguments.
Explicite mieux ton problème. -
c'est exactement la recuperation des arguments; la commande à passer est la suivante:
tsp -I file ~/Desktop/Flux/NRK.ts -P inject -f -d ~/Desktop/test -O file ~/Desktop/FAI3.ts
je veux recuperer le chamin passée juste après le "-d"
j'arrive pas à faire le code C qui me fait ça :( -