Xlib et commande free

Bonjour,

Alors voilà, je vous montre l’étendue de mon désarroi et de mon ignorance:

  • J’ai un exemple de “Hello, world!” dans une fenetre X11 qui marche bien.
  • Quand je teste un bout de code à moi ou que je debugge, j’aime bien avoir un petit terminal dans lequel je lance free -s 1, ce qui execute la commande free toutes les secondes et m’affiche un joli résultat.
  • J’aimerais donc avoir le résultat de ma commande dans la super fenêtre X11, sauf que je ne vois pas du tout comment faire…

Quelqu’un a-t-il une idée, une suggestion?

Bonjour,

Un simplest code pipe.c:

[code]
#include <stdio.h>

#define LINELENGHT 256

int main()
{
char line[LINELENGHT];

while (fgets(line, LINELENGHT, stdin))
{
	fprintf(stdout, ":-) %s", line);
}

}[/code]

après “make pipe” tu fais dans un shell: “free -s 1 | ./pipe”

donc les lignes se retrouvent dans line[] que tu peux imprimer dans ta fenêtre plutôt que sur stdout.

Pour avoir un code un peu plus compliqué tu prends les sources d’un logiciel de gravure et tu regardes comment le code récupère les infos de l’utilitaire de gravure.

:smt001

Bonjour,

En fait, j’ai assez mal exprimé mon problème. En réalité, je suis bloqué sur le type de Xevent qui permettrait de forcer le rafraichissement de la fenêtre, et pas vraiment sur comment transmettre le résultat de la commande…

Sinon, merci pour l’idée du pipe, c’est adapté dans d’autres circonstances