problemes avec la famille exec
j'ai des problemes avec la famille des fonctions execve,execlp ... que je n'arrive pas a utuliser sur mon pc. par exemple avec la fonction execve:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
#include <unistd.h>
#include <stdio.h>
int main()
{
char cmd[32];
printf("cmd?:");
scanf("%s",cmd);
execve(cmd,NULL,NULL);
return 0;
} |
ce programme n'execute pas la commande en fait il ne fait rien.
et celui la avec execlp me donne une erreur de segmentation:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| #include <unistd.h>
#include <stdio.h>
int main()
{
char cmd[32];
printf("cmd?:");
scanf("%s",cmd);
execlp(cmd,NULL,NULL);
return 0;
} |
et gdb affiche le message suivant:
Citation:
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff74c187a in strrchr () from /lib/libc.so.6
(gdb) bt
#0 0x00007ffff74c187a in strrchr () from /lib/libc.so.6
#1 0x000000000040a36e in ?? ()
#2 0x0000000000407bfe in ?? ()
#3 0x00007ffff7460abd in __libc_start_main () from /lib/libc.so.6
#4 0x0000000000402709 in ?? ()
#5 0x00007fffffffe478 in ?? ()
#6 0x000000000000001c in ?? ()
#7 0x0000000000000000 in ?? ()
(gdb)
Je sollicite de toute urgence une aide car je deprime rien qu'au essaye toutes les combinaisons mais sans succes. Merci d'avance.:cry: