Jak przełączać się między ekranem wewnątrz ekranu?

12

Muszę pracować w dwóch środowiskach. Jeden Windows (lokalny) i jeden Linux (zdalny). Zainstalowałem narzędzie linux ekranu w obu. Jestem w stanie otworzyć ekran w moich oknach, a następnie w jednej zakładce otworzyłem połączenie ssh ze zdalnym systemem Linux i uruchamiam inny ekran.

Próba

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

Mogę przełączać się między „linux remote 0” i „linux remote 1” za pomocą Atl +. Jest to skonfigurowane w .screenrc (klawisz powiązania „^ [0” wybierz 0) Jak mogłem przejść do „9 okien”?

André Andrade
źródło

Odpowiedzi:

21

Ach ekran w ekranie ... bardzo początkowy. Musimy zejść głębiej...

To powiedziawszy, możesz wysłać ctrl-A do zagnieżdżonego ekranu, wykonując Ctrl-AA.


źródło
Poetyckie i precyzyjne: o co więcej może prosić pokorny programista? ;)
Tomislav Nakic-Alfirevic
Przekonałem się, że wystawianie Ctrl+A Aprzełącza tylko między bieżącym a ostatnim wewnętrznym oknem w ramach sesji wewnętrznego ekranu. Jak przechodzić przez cały stos okna wewnętrznego ekranu? Twoje zdrowie!
nemesisfixx
7

Ctrl+A, 9lub Ctrl+A, "(to podwójny cudzysłów), a następnie wybierz go z listy.


źródło
1
Tak przełącza się okna w jednej screensesji. Pytanie dotyczy sesji ekranu zagnieżdżonego.
Keith Thompson,
4

Kiedy uruchamiam screen na innym ekranie, dla każdego używam innego znaku polecenia.

Zamiast domyślnego ctrl-A używam ctrl-space (znak null, escape ^@^@in .screenrc) dla zewnętrznego i ctrl-] ( escape ^]^]in .screenrc) dla wewnętrznego.

Jeśli tego nie zrobisz, możesz wysłać pojedynczy znak polecenia do wewnętrznej zagnieżdżonej screensesji (lub dowolnego innego polecenia działającego pod screen), podwajając go.

Keith Thompson
źródło
Właśnie tego szukałem - dzięki!
andersonbd1
Jak mogę zmienić znak polecenia w .screenrczależności od bieżącej głębokości?
Scz
1
@Scz: Nie wiem. Mam sesję ekranu uruchomioną w moim systemie domowym (z escape ^@^@) i inną sesję uruchomioną w innym systemie (z escape ^]^]). Tak się składa, że ​​mam sshsystem drugi jako jedno z okien pierwszego.
Keith Thompson
3

Jak wspomniano przez rocka84, ale dla drugiego polecenia nie trzeba naciskać Ctrlponownie. Podobnie jak w przypadku tworzenia nowego ekranu w zagnieżdżonych terminalu trzeba zrobić tak Ctrl+a, a, c.

pochopny
źródło
1

Możesz nacisnąć Ctrl+ a, a następnie Shift+ '(single quote)'i wybrać żądany ekran.

Możesz też nacisnąć klawisz Ctrl+, a(double tap)aby powrócić do poprzedniego ekranu.

szalony
źródło
1

Jak wspomniano, możesz wysłać Ctrl+Ana ekran wewnętrzny za pomocą Ctrl+A A. Zrób to dwa razy, aby przełączyć ekran wewnętrzny.
Pamiętaj, aby zwolnić Ctrldla drugiego (i dalej) A

Btw: Dotyczy to wszystkich sekwencji kontrolnych na ekranie wewnętrznym, wystarczy nacisnąć Ctrl+Aprzed wszystkimi klawiszami i upuścić Ctrlklawisze sekwencji. Łatwiej pokazać, niż opisać:
Ctrl+A A Ctworzy nowy ekran wewnętrzny.

rocka84
źródło
0

Możesz użyć jak poniżej

  • na następny ekran i

Ctrl + A n

dla poprzedniego ekranu

Ctrl + A p

SuperKrish
źródło
0

Odpowiedź Marca B zdawała się działać, tyle że żonglowała jedynie między bieżącym a ostatnim oknem w sesji ekranu wewnętrznego. Poniższe pozwoliły na zachowanie powszechnie oczekiwanego zachowania Ctrl+Awewnątrz zawartej sesji ...

Ctrl+A A

I na przykład podczas jazdy na rowerze przez okna ...

Ctrl+A A [N,P]

nemesisfixx
źródło