screen und tmux steuern
Das Problem hatte ich schon häufig und immer wieder vergesse ich Lösung zum Steuern von screen und tmux von außen.
screen und tmux sind beides Terminal Multiplexer. Sie erlauben es, Shell sessions über die Dauer einer SSH Session hinaus zu nutzen und zu erhalten. Dieser Post soll mich daran Erinnern, wie man den Inhalt einer solchen Session auch im Nachhinein modifizieren kann.
screen
Startet eine screen session mit dem Namen test. Zu dieser Session, kann man sich danach mit
verbinden.
Die Kombination für Kommandos ist bei screen im default CTRL-a.
Um einer screen Session von außen, zum Beispiel, durch ein Script, einen Befehl zu geben, ist das Kommando:
Dies sendet die Eingabe innerhalb der “ an die in screen gerade aktive
Shell, der Session test.
Das ^M ist die Darstellung der Shell von newline.
Um dies als Eingabe zu erhalten, sind die Tasten CTRL-v ENTER zu drücken.
Ähnlich verhällt es sich, wenn CTRL-c als Eingabe gesendet werden soll.
Dann ist muss erst CTRL-v und im Anschluss CTRL-c gedrückt werden.
tmux
tmux -L test
Startet eine tmux session mit dem Namen test. Zu dieser Session, kann man sich danach mit
verbinden.
Die Kombination für Kommandos ist bei tmux im default CTRL-b.
tmux hat eine Reihe von Möglichkeiten zur Steuerung einer Session.
| Kommando | Beschreibung |
|---|---|
| new-window | Erstellt ein neues Fenster |
| next-window | Wechselt zum nächsten Fenster |
| select-window -t 99 | Wechselt zu Fenster 99 |
| send-keys “echo a^M” | Sendet die Eingabe “echo a” an das gerade aktive Fenster |
Auch hier ist das ^M für das Senden von newline.