1

У меня странное затруднение. Я хочу обнаружить на удаленном конце соединения SSH, если клиент запускает терминал в сеансе экрана. Я хочу настроить мой запрос на основе этого. До сих пор я пытался использовать remotehost:~/.ssh/env [1] и опцию SendEnv в моем localhost:~/.ssh/config для отправки моей переменной $STY [2]; но оба не смогли.

Так что мне было интересно, есть ли другой способ добиться этого?

Примечания:

[1] Это не работает, так как ничего не оценивает, я не могу настроить все динамически.

[2] Это требует, чтобы AcceptEnv был разрешен на удаленном конце. Это невозможно, потому что я не являюсь администратором на удаленном хосте, и даже если бы я был администратором man sshd_config он не советовал.

1 ответ1

0

Попробуй это:

if [ "${TERM}" == "screen" ]
then
    # Set prompt to something special for screen.
fi

Вот соответствующая цитата с экрана man:

   term term

   In  each  window's  environment  screen opens, the $TERM variable is set to "screen" by default.  But when no description for "screen" is installed in the
   local termcap or terminfo data base, you set $TERM to - say - "vt100". This won't do much harm, as screen is VT100/ANSI compatible.  The use of the "term"
   command is discouraged for non-default purpose.  That is, one may want to specify special $TERM settings (e.g. vt100) for the next "screen rlogin otherma-
   chine" command. Use the command "screen -T vt100 rlogin othermachine" rather than setting and resetting the default.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .