Ich habe eine in C erstellte Anwendung, die fgets verwendet, um Benutzerbefehle von stdin zu lesen. Ich möchte, dass mein eingebettetes Linux-System diese Anwendung beim Start ausführt und den Benutzer in das Terminal dieser Anwendung versetzt.
Ich kann die Anwendung beim Start mithilfe eines Bash-Skripts starten:
./my_app
aber die Anwendung scheint keine Standardeingabe vom Benutzerterminal zu erhalten.
Wenn ich mit der Anmeldung bei Linux warte und die Anwendung dann manuell vom Terminal aus starte, kann ich problemlos damit interagieren.
Gibt es eine Möglichkeit, das Programm automatisch zu starten (z. B. mit einem Startskript), dann aber die Kontrolle an den Benutzer zu übergeben, als ob dieser das Programm selbst gestartet hätte?
Antwort1
Ich habe gefunden, was ich gesucht habe:
exec ./my_app
ersetzt das normale Linux-Terminal durch die Anwendung. Der Nachteil ist, dass Sie mit Strg + C nicht wieder zu Linux zurückkehren können, aber das ist für mich nicht wichtig, also erledigt das die Aufgabe.