Mit der folgenden screen Konfiguration (~/.screenrc
) wird am unteren Fensterrand ein Leiste angezeigt, die den Login-Namen und das System (auf dem screen läuft) angezeigt, dann Tabs mit den jeweiligen Sessions, wobei hier der Name der Tabs den Namen des Systems enthält, auf dem man gerade (per SSH) arbeitet, Datum und Uhrzeit, sowie die Last des Systems.
Zusätzlich werden noch Key Bindings konfiguriert.
startup_message off hardstatus alwayslastline hardstatus string '%{= kG} %{G}'$LOGNAME'@%H %{g}| %{= kw}%?%-w%?%{r}[%{W}%n %t%?(%u)%?%{r}]%{w}%?%+w%?%?%= %{g} |%{G} %d/%m/%Y %c:%s | Load: %l %{W}%{g}' defscrollback 9999 vbell off # F9 - kill current window session bindkey -k k9 kill # F10 - create new windows session and ask for a title register n "^a^c^aA" bindkey -k k; process n # F11 - show window list register w "^a\"" bindkey -k F1 process w # F12 - enter copy/scrollback mode in current window bindkey -k F2 copy
Damit der Name des Tabs sich automatisch ändern, benötigt es noch folgenden Code in der ~/.bashrc
:
function setscreentitletohost() { if [ "$TERM" == "screen" ] ; then echo -ne "\033k$HOSTNAME\033\\" fi } setscreentitletohost function ssh() { inargs="$@" if [ "$TERM" == "screen" ] ; then host="${inargs#*@}" host="${host% *}" user="${inargs%@*}" user="${user#* }" echo -ne "\033k$host\033\\" fi /usr/bin/ssh ${inargs} setscreentitletohost }