Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo,

hab da ein kleines Problem, vielleicht kann mir einer weiterhelfen.

Ich würde gerne aus einem C-Programm heraus ein Programm auf dem unterliegenden Linux-System ausführen (mit Kommandozeilenparametern).

Ich habe gehört, das wäre mit execv() möglich. Aber wie komme ich an die Rückgaben der Programme ran (z.B. die Ausgabe der PID's beim "ps"-Befehl)? Diese will ich nämlich durch das C-Programm auswerten.

Gibt es vielleicht sogar eine Möglichkeit aus dem C-Programm heraus mit den laufenden Programmen zu interagieren (z.B. Passworteingabe bei "su")?

Vorab schon mal Danke für die Hilfe.

Geschrieben

Ein Programm kann außer einem Integer nichts zurückgeben und dieser wird nur vom Betriebssystem ausgewertet.

Ich meine zwar mal gelesen zu haben das man diesen auch irgendwie abfragen kann, weiß aber nicht wie.

Etwas komplexeres wie ein return 0 oder 1 oder eine andere Zahl geht aber auf alle Fälle nicht.

Geschrieben

Gibt's dann vielleicht eine Möglichkeit mich als C-Programm an den stdout, stdin oder stderr des Betriebssystems zu hängen? Was Anderes machen Shells doch eigentlich auch nicht, oder?

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...