en changeant la ligne
"ps", /* nom du programme.*/
en
"/bin/ps", /*nom du programme.*/
Et en changeant la liste des options :
">id_proc.txt", /* redirection vers le fichier où je veux mettre les resultats */
};
est devenu :
">id_proc.txt", /* redirection vers le fichier où je veux mettre les resultats */
NULL
};
En effet, la page de man des fonctions exec indique :
"The list of arguments must be terminated by a NULL pointe"
Pour autant, ça ne donne pas le résultat escompté puisque le >id_proc.txt est compris pas la commande ps comme une option, et on se retrouve à l'exécution de l'affichage de l'aide de base de la commande ps. Aux gourous de faire mieux, ça me dépasse, pour l'instant (le coup de récupérer la sortie standard, je ne sais pas trop non plus comment faire).
Une autre piste serait peut-être d'exploiter le répertoire /proc, non ?
# J'ai réussi à l'exécuter,
Posté par Gyro Gearllose . En réponse au message ecrire la liste des processus utilisateurs dans un fichier texte. Évalué à 1.
"ps", /* nom du programme.*/
en
"/bin/ps", /*nom du programme.*/
Et en changeant la liste des options :
">id_proc.txt", /* redirection vers le fichier où je veux mettre les resultats */
};
est devenu :
">id_proc.txt", /* redirection vers le fichier où je veux mettre les resultats */
NULL
};
En effet, la page de man des fonctions exec indique :
"The list of arguments must be terminated by a NULL pointe"
Pour autant, ça ne donne pas le résultat escompté puisque le >id_proc.txt est compris pas la commande ps comme une option, et on se retrouve à l'exécution de l'affichage de l'aide de base de la commande ps. Aux gourous de faire mieux, ça me dépasse, pour l'instant (le coup de récupérer la sortie standard, je ne sais pas trop non plus comment faire).
Une autre piste serait peut-être d'exploiter le répertoire /proc, non ?