
Ich verwende SSH, um eine Verbindung zum Remote-Server herzustellen. Auf einem lokalen und einem Remote-Computer wird tmux beim Start von Bash automatisch gestartet.
Gibt es eine Möglichkeit, tmux auf dem lokalen Computer zu trennen, bevor die tmux-Sitzung auf dem Remotecomputer gestartet wird?
Aktualisieren
Nicht alle meiner Remote-Rechner starten tmux. Ich brauche den Trick nur für die, die gestartet sind, d. h. ich möchte die tmux-Sitzung auf dem lokalen Rechner speichern, wenn der Remote-Rechner keine startet.
Antwort1
Sie könnten ein Skript erstellen, das „detach -E“ zum Trennen und Ausführen von SSH verwendet, etwa so:
#!/bin/sh
if [ -n "$TMUX" ]; do
tmux detach -E "ssh \"$@\""
else
ssh "$@"
fi
Sie können es direkt ausführen oder einen Alias für SSH verwenden.
Beachten Sie, dass dies nicht funktioniert, wenn Sie Flag-Argumente an SSH übergeben möchten.