Как отсоединить 2-й экран от другого экрана?

119

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

Один из способов - отсоединить внутренний экран screen -drот оболочки, но какова комбинация клавиш для этого внутри самого экрана?

Артем Руссаковский
источник

Ответы:

157

ctrl-a a d

хаос
источник
4
Если вы настроили escape-символ экрана на что-то отличное от Ctrl-A, то последовательность клавиш будет совсем другой. :)
slacy
Да, ты сам по себе с этим. <esc> объявление может работать; Страница man неоднозначна, так как она говорит, что a отправляет escape-символ, а затем поясняет, что это означает ctrl-A. Так что это дерьмо.
4
Спасибо, поехали, это именно то, что я тоже запомнил, и когда я рассказал об этом своему коллеге, у которого возникла эта проблема, он сказал, что это не работает. Конечно, теперь я узнал, что он нажимал ctrl-a, ctrl-a, d вместо ctrl-a, a, d. Проголосовал и закрыл.
1
@brandizzi: Вы проверяли это? Потому что я глубоко подозреваю, что это не тот случай, а последовательность, которую вы бы использовали ctrl-t a d.
хаос
1
@chaos ты проверял это? Я попробовал это прямо сейчас и, да, Ct td отсоединяет экран внутри экрана. Вы можете попробовать это? Просто добавь escape ^Ttв свой ~/.screenrc.
Brandizzi
63

ctrl+a aпередаст escape-последовательность (ctrl + a) на подэкран .. Итак, ctrl+a a dсделаем ctrl+a dна подэкране (отсоединяя его)

Работает с любой экранной командой, например ctrl+a, a, c, создаст окно на подэкране


источник
3
У этого есть лучшее объяснение
Sgnl
3

В общем, если у вас есть экран s3на другом экране s2на другом экране s1, вы можете выполнить команду ctrl-a dна экране:

  • s1 при выполнении: ctrl-a d
  • s2 при выполнении: ctrl-a a d

  • s3 при выполнении: ctrl-a a a d

  • ...

Watou
источник
0

Ну, есть взлом для этого. Просто удаленно отсоедините нужный экран, выполнив следующую команду

screen -r -d screen_name or screen -rd screen_name
Римжим
источник