
Ich habe einOpenWRTSystem, für das ich ein kleines interaktives Shell-Skript geschrieben habe, das ein Menü anzeigt und basierend auf der Eingabe entsprechende Informationen auf Standardausgabe ausgibt.
Zum Beispiel:
== Please Select Option ==
[1] Display IP address
[2] Display VPN Status
[3] Display something else
Please enter your choice?
Wenn ich das Skript manuell ausführe ( menu.sh
), scheint es einwandfrei zu funktionieren. Ich muss jedoch eine Möglichkeit finden, das Skript automatisch zu starten, wenn das Betriebssystem hochgefahren wird. Anstatt einer Shell-Eingabeaufforderung sieht der Benutzer dann die Ausgabe des Skripts, in diesem Fall das Menüsystem.
Wie gehe ich vor?
Antwort1
OpenWRT verwendet Busybox ash
als Shell, die die Befehle scheinbar /etc/profile
beim Anmelden ausführt.
Wenn Sie möchten, dass das Skript automatisch ausgeführt wird, wenn sich jemand anmeldet (was wahrscheinlich nur der Fall ist, wenn es sich um einen Router handelt), funktioniert root
es meiner Meinung nach, wenn Sie am Ende Folgendes hinzufügen :/etc/profile
/full/path/of/menu.sh
und wenn Sie nicht möchten, dass das Menü nach Abschluss in die Shell verschoben wird, benötigen Sie eine zusätzliche Logik, um dies zu unterstützen.