Übergeben der Eingabetaste per Shell-Skript

Übergeben der Eingabetaste per Shell-Skript

Ich verwende, phpseclibum in bestimmten Abständen ein Shell-Skript auf meinem Server auszuführen. Dieses Skript beinhaltet die Verwendung von . Aus irgendeinem Grund wird der Prozess beendet, wenn nach dem Start nohupkein Benutzer bereit ist, SIGINT oder eine Rückgabe an zu senden .nohup

Wenn ich das Skript beispielsweise über eine lokale Eingabeaufforderung ausführe, wird es ausgeführt. Dann muss ich nur die Eingabetaste drücken und erhalte eine neue Eingabeaufforderung. Wenn ich versuche, es automatisch auszuführen, kann ich weder die Rückgabe noch ein SIGINT übergeben und der Vorgang wird nie beendet. Ideen?

Antwort1

Normalerweise habe ich für solche Dinge in der Vergangenheit ein hässliches TCL/Tk-Framework namens Expect verwendet. Mir ist aufgefallen, dass es eine PHP-Version von expect gibt, die heißtPHP:Erwarten. Vielleicht hilft das hier?

Mit Expect können Sie eine Konsolenverbindung simulieren und beliebige Tastenkombinationen senden. Seien Sie jedoch gewarnt, diese Frameworks können schmerzhaft sein. Wenn Sie nicht an PHP gebunden sind, sehen Sie sich Folgendes an:Ashierdas klingt großartig (obwohl ich es noch nie benutzt habe).

verwandte Informationen