запустите экран гну автоматически

Я хочу запустить экран гну автоматически, когда я вхожу в свою удаленную машину через ssh, таким образом, я добавляю

exec screen

в конец .bash_profile файла затем я узнаю, что, когда я завершаю экранирование, мое соединение с хостом ssh также сразу закрывается. Как я могу избежать этого?

В случае, если это, я хочу возобновить экран (например, названный 'старым экраном'), потому что я начинаю экранировать каждый раз, когда я вхожу в систему, я сталкиваюсь с ситуацией, что я привязан к 'новому экрану', и я хочу повторно прикрепить к 'старому экрану'. Если я просто

screen -r old-screen

Я оказываюсь на рекурсивном экране, и я не могу перейти в 'старом экране', потому что все сочетание клавиш получено 'новым экраном'. Если я попытаюсь выйти из текущего экрана, то мое подключение к удаленной машине будет также сразу потеряно.

Какое-либо решение его?

4
задан 09.03.2011, 14:35

3 ответа

Вместо использования screen -r который пытается возобновить экранную сессию, можно использовать screen -R который пытается возобновить экранную сессию и создает новую, если Вы не существуете.

   -r [pid.tty.host]
   -r sessionowner/[pid.tty.host]
        resumes  a detached screen session.  No other options (except com-
        binations with -d/-D) may be specified, though an optional  prefix
        of  [pid.]tty.host  may  be needed to distinguish between multiple
        detached screen sessions.  The second form is used to  connect  to
        another  user's  screen session which runs in multiuser mode. This
        indicates that screen should look for sessions in  another  user's
        directory. This requires setuid-root.

   -R   attempts to resume the first detached screen session it finds.  If
        successful, all other command-line options  are  ignored.   If  no
        detached  session exists, starts a new session using the specified
        options, just as if -R had not been specified. The option  is  set
        by default if screen is run as a login-shell (actually screen uses
        "-xRR" in that case).  For combinations with the -d/-D option  see
        there.

Лично я склонен использовать screen -DRA.

   -D -R   Attach here and now. In detail this means: If a session is run-
           ning, then reattach. If necessary detach  and  logout  remotely
           first.   If  it  was not running create it and notify the user.
           This is the author's favorite.
   -A      Adapt  the  sizes of all windows to the size of the current termi-
           nal.  By default, screen tries to restore  its  old  window  sizes
           when  attaching  to  resizable  terminals  (those with "WS" in its
           description, e.g. suncmd or some xterm).
8
ответ дан 07.12.2019, 19:12

Я часто обдумывал то же самое сам.

Самое близкое, которое я придумал, должно выполнить экран как часть команды ssh для соединения с удаленным сервером:

$ ssh -t foo@bar.com screen -r

или в PuTTY входят screen -r в Remote command поле предпочтений SSH.

Я склонен искажать много команд ssh к различным хостам и различным экранным сессиям.

1
ответ дан 07.12.2019, 19:12

Ваша ОС может поддерживать переключатели командной строки с определением команды оболочки в Вашем параметре "входа в систему" для Вашей учетной записи? Если так, попытайтесь изменить его на:

  • /path/to/bash-c "экранируют-R"
0
ответ дан 07.12.2019, 19:12

Теги

Похожие вопросы