Sscreen: support des cas où screen n'est pas dans le PATH

This commit is contained in:
Jephté Clain 2023-11-20 16:54:59 +04:00
parent 5a06851b0f
commit 54a5b5485d
1 changed files with 14 additions and 4 deletions

18
Sscreen
View File

@ -18,15 +18,25 @@ function __ask() {
}
function __auto_screen() {
# Si on est déjà dans screen, ne rien faire
[ -z "$STY" ] || return
# Si screen pas installé, ne rien faire
if [ -z "$(which screen 2>/dev/null)" ]; then
local dir screen="$(which screen 2>/dev/null)"
if [ -z "$screen" ]; then
for dir in /usr/local/bin /opt/bin /usr/bin /bin; do
if [ -x "$dir/screen" ]; then
screen="$dir/screen"
PATH="$PATH:$dir"
break
fi
done
fi
if [ -z "$screen" ]; then
echo "${COULEUR_JAUNE}WARNING${COULEUR_NORMALE} screen introuvable. une session bash classique sera lancée"
exec /bin/bash -l
fi
# Si on est déjà dans screen, ne rien faire
[ -z "$STY" ] || return
# corriger TERM pour les vieilles versions de Linux
case "$TERM" in
xterm*) TERM=xterm;;