Comment récuperer le resultat de system() dans une variable

Signaler
Messages postés
2
Date d'inscription
samedi 15 janvier 2005
Statut
Membre
Dernière intervention
15 avril 2010
-
Messages postés
571
Date d'inscription
vendredi 30 décembre 2005
Statut
Membre
Dernière intervention
12 juillet 2012
-
Bonjour,
j'aimerai récuperer le pid d'un processus pour cela je fais :

#include <cstdlib>

int main(){

int pid;
pid=system("ps -A | grep firefox | cut -d' ' -f2");


Mais avec ce bout de code, dans ma variable pid, j'obtient la valeur de retour de system() (0, car elle fonctionne) comment faire pour récuperer le resultat ?

Merci d'avance :)

3 réponses

Messages postés
571
Date d'inscription
vendredi 30 décembre 2005
Statut
Membre
Dernière intervention
12 juillet 2012
3
salut, popen()
Messages postés
2
Date d'inscription
samedi 15 janvier 2005
Statut
Membre
Dernière intervention
15 avril 2010

Merci pour ta réponse mais pourrai tu m'éclaircir un peu plus ?!

j'arrive à mettre la valeur de mon pid dans un FILE* mais comment recuperer la valeur ?!

FILE* tmp=popen("ps -A | grep geany | cut -d ' ' -f2", "w")
pclose(tmp);
Messages postés
571
Date d'inscription
vendredi 30 décembre 2005
Statut
Membre
Dernière intervention
12 juillet 2012
3
Sous UNIX tout est fichier. Avec un descripteur de fichier (FILE*) on peut lire et écrire dans un flux de données.

Tu vois la zone de saisie au dessus? tu tapes popen dedans puis entrée ça donne ça http://www.cppfrance.com/recherche.aspx?r=popen&dotnet=0#

Tu peux aller là aussi http://www.google.fr/search?sourceid=chrome&ie=UTF-8&q=popen+example

merci, merci.