Ausgabe abfangen wie?
-
Hi,
mein Programm gibt nen Befehl in/an die Shell ein/weiter. Bisher hab ich dann immer per ">" die Ausgabe in ne Datei gespeichert und die Daten dann aus ihr gelesen. Aber um den Plattenzugriff zu vermeiden wuerde ich die Daten gerne direkt in ein array schreiben, geht das?
(Die Sprache in der das Programm geschrieben ist ist C)
Gruß HiFish
-
Mit popen kannst Du einen Befehl öffnen wie eine Datei (ANSI-C Stream) und dann die Ausgaben lesen.
FILE *f = popen("ls -l /", "r"); while (!feof(f)) { /* Lesen, machen */ } pclose(f);
-
ok vielen dank