ist es irgendwie möglich zu überprüfen, ob ich gerade in der Bildschirmsitzung bin? Ich brauche es, um festzustellen, ob das Drücken von Strg + D mich vom Server trennen oder nur den aktuellen Bildschirm schließen würde. Vielen Dank.
gnu-screen
console
wlk
quelle
quelle
if test -n "$STY"; then printf "This is a screen session named '$STY'.\n"; else printf "This is NOT a screen session.\n"; fi
Sie können sich die Variable $ TERM ansehen.
echo $TERM
Wenn es sich um eine
screen
Sitzung handelt, sollte der Begriff Variable "screen" zurückgeben.Strg-a-d (um den Bildschirm zu verlassen)
Überprüfen Sie auch: https://stackoverflow.com/questions/3472287/how-do-you-tell-if-the-current-terminal-session-is-in-gnu-screen
quelle
"$TERM" = "screen"
scheint imsudo
Gegensatz zur$STY
Option beim Betreten der Umgebung erhalten zu sein .Sofern Sie die Standardtastenbelegung nicht geändert haben, können Sie Ctrl+ a-> Ctrl+ tausführen, um die Uhrzeit anzuzeigen, wenn Sie sich auf dem Bildschirm befinden. Dies funktioniert auch, wenn Sie anderswo ssh: d haben, im Gegensatz zu den anderen Vorschlägen.
quelle
Der
caption
Befehl in der~/.screenrc
ist eine gute Möglichkeit, eine Bildschirmsitzung zu unterscheiden.Ich persönlich benutze das:
Es wird eine Zeile wie die folgende am unteren Rand des Bildschirms hinzugefügt:
Mit dem ersten Teil (Systemname + Laden) in Grün und dem Datum in Rosa. Nützlich und schwer zu übersehen!
quelle
Ich habe eine andere Lösung gefunden:
Ändern Sie Ihre
.screenrc
, so dass meine Bildschirmsitzung völlig anders aussieht als bei normalen Terminals.quelle
.screenrc
anzeigen.um Ihre Sessions zu sehen und
Verbindung zu einem getrennten Teilnehmer wiederherstellen, wenn dieser getrennt ist.
Verbindung zu einem getrennten Teilnehmer wiederherstellen.
quelle
Mach ein
screen -ls
. Es wird explizit angeben , imAttached
Vergleich zuDetached
Status.Beispiel beigefügt:
Beispiel abgelöst:
quelle