Как переключаться между экраном внутри экрана?


12

Я должен работать в двух средах. Одна Windows (локальная) и одна Linux (удаленная). Я установил утилиту экрана Linux в обоих. Я могу открыть экран в своих окнах, затем на одной вкладке я открыл ssh-соединение с linux remote и запускаю другой экран.

Образец

linux  -- |0 linux remote 0| 1 linux remote 1 
windows-- |0 linux | 9 windows 

Я могу переключаться между «linux remote 0» и «linux remote 1», используя Atl +. Это настраивается в .screenrc (bindkey "^ [0" выберите 0) Как я могу переключиться на "9 окон"?

Ответы:


21

Ах. Экран на экране ... очень Начало. Нам нужно идти глубже ...

При этом вы можете отправить Ctrl-A на вложенный экран, выполнив Ctrl-AA.


Поэтично и точно: чего еще может попросить скромный разработчик? ;)
Томислав Накич-Альфиревич

Я обнаружил, что выдача Ctrl+A Aделает только переключение между текущим и последним внутренним окном в сеансе внутреннего экрана. Как пройти через весь стек внутренних окон? Ура!
nemesisfixx

7

Ctrl+A, 9Или Ctrl+A, "(это двойные кавычки) , а затем выберите его из списка.


1
Вот как переключать окна в одном screenсеансе. Вопрос о вложенных сеансах экрана.
Кит Томпсон

4

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

Вместо ctrl-A по умолчанию я использую ctrl-space (нулевой символ, escape ^@^@in .screenrc) для внешнего и ctrl-] ( escape ^]^]in .screenrc) для внутреннего.

Если вы этого не сделаете, вы можете отправить один символ команды во внутренний вложенный screenсеанс (или в любую другую команду, выполняющуюся под ним screen), удвоив его.


Это именно то, что я искал - спасибо!
andersonbd1

Как я могу изменить символ команды в .screenrcзависимости от текущей глубины?
Scz

1
@Scz: я не знаю. У меня есть сеанс экрана, запущенный в моей домашней системе (с escape ^@^@), и другой сеанс, работающий в другой системе (с escape ^]^]). У меня просто есть sshвторая система в качестве одного из окон первого.
Кит Томпсон,

3

Как упомянуто rocka84, но для второй команды вам не нужно нажимать Ctrlснова. Как и для создания нового экрана в гнездовом терминале вам нужно сделать , как это Ctrl+a, a, c.


1

Вы можете нажать Ctrl+ a, затем Shift+ '(single quote)'и выбрать нужный экран.

Или вы можете нажать Ctrl+, a(double tap)чтобы вернуться к предыдущему экрану.


1

Как уже упоминалось, вы можете отправить Ctrl+Aна внутренний экран с помощью Ctrl+A A. Просто сделайте это дважды, чтобы переключить внутренний экран.
Обязательно отпустите Ctrlдля второго (и четвертого) A

Btw: Это относится ко всем управляющим последовательностям внутреннего экрана, просто нажмите Ctrl+Aперед всеми Ctrlклавишами и отбросьте клавиши последовательности. Проще показать, чем описать:
Ctrl+A A Cсоздает новый внутренний экран.


0

Вы можете использовать как ниже

  • для следующего экрана и

Ctrl + A n

для предыдущего экрана

Ctrl + A p


0

Казалось, ответ Марка Б. сработал, за исключением того, что он только манипулировал между текущим и последним окном в сеансе внутреннего экрана. Следующее позволило иметь обычно ожидаемое поведение Ctrl+Aвнутри содержащейся сессии ...

Ctrl+A A

И, например, при езде на велосипеде через окна ...

Ctrl+A A [N,P]

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.