Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3389 connectés 

 


Dernière réponse
Sujet : appel à la fonction system() et quote
manu025 Effectivement avec system ça marche, bon ben je vais me faire chier avec ça alors :/

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
manu025 Effectivement avec system ça marche, bon ben je vais me faire chier avec ça alors :/
manu025 Bon, en fait j'ai dit que j'utilisais system() pour simplifier mais en fait j'utilise g_spawn_command_line_sync de la glib. Cela permet de récupérer le résultat de sortie sans se faire chier avec system et fork/exec.
 
Donc j'ai ça :  

Code :
  1. g_spawn_command_line_sync("cat /proc/loadavg | cut -f1 -d\" \"",&standard_output,NULL,NULL,error);


 
Et à l'exécution j'ai l'erreur :
(process:31829): GLib-CRITICAL **: unquote_string_inplace: assertion `err == NULL || *err == NULL' failed
 
et j'ai de la purée à l'afichage.

l0ky code:

Code :
  1. int
  2. main (argc, argv)
  3.      int argc;
  4.      char **argv;
  5. {
  6.   system("/bin/cat /proc/loadavg | /usr/bin/cut -f1 -d\" \"" );
  7.   exit (0);
  8. }


 
résultat:

\_{src} ./test  
0.26

l0ky Ca marche pour moi... tu as quoi comme erreur ??


 system("/bin/cat /proc/loadavg | /usr/bin/cut -f1 -d\" \"" );

manu025 j'y avais bien pensé, mais cela ne marche pas.
l0ky \" pour les " et \\ pour les \
manu025 Bonjour,
 
J'ai un soucis concerant l'utilisation de la pimitive system() en C sous linux.
 
j'aimerais exécuter la commande suivante : cat /proc/loadavg | cut -f1 -d" " ou cat /proc/loadavg | cut -f1 -d\ .
Le problème est qu'à cause des " ou du \, cela ne passe pas l'appel à system().
 
Auriez-vous une idée ?
Merci d'avance.

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)