Ich habe versucht, Befehle an eine laufende Gnu-Bildschirmsitzung (4.00.03) in opensolaris zu senden, kann jedoch keine Befehle über eine beliebige Kombination von ausführen screen -X
Ok, ich starte eine Bildschirmsitzung mit screen -S test
und habe dann versucht, screen -r -X "date"
mir nur das Datum anzuzeigen, an dem ich mich wieder damit verbinden würde. Es ist jedoch weder eine Fehlermeldung noch eine Ausgabe auf dem Bildschirm aufgetreten. Ich habe es mit so vielen Kombinationen versucht, dass ich mich nicht einmal erinnern kann.
Irgendwelche Hinweise, wie man das erreicht?
Der Grund, warum ich das mache, ist, dass ich ein Programm habe, das nicht als Dämon geliefert wird, und ich möchte es in einer Bildschirmsitzung starten, damit ich später sehen kann, was los ist.
quelle
Antworten:
Eigentlich ist es ganz einfach. Sie können Folgendes verwenden:
echo -ne '\015'
emuliert das Drücken der EnterTaste.HINWEIS: Dieses 'Zeug' ist ein Bildschirmbefehl. http://www.gnu.org/software/screen/manual/screen.html#Stuff
quelle
stuff
ist ein Bildschirmbefehl, um eine Zeichenfolge in stdin zu stopfenecho -ne '\015'
", warum?screen -d -m -S sessionname; screen -S sessionname -X [...]
nichts tue , wird es nie funktionieren,(screen -d -m -S sessionname&)&sleep 10;screen -S sessionname -X [...]
es wird nichts getan, außer eine neue Bildschirmsitzung zu erstellen, die nichts tut. Down-VotingKlingt wie Sie wollen:
Oder vielleicht willst du nur dtach .
quelle
screen -list
werden keine Sitzungen geöffnet.Öffnen Sie ein neues Fenster (mit dem Titel title ) in einer vorhandenen Sitzung mit dem Namen session_name und führen Sie shell_command aus (mit optionalen Argumenten args ).
quelle