W ciągu nocy uruchamiałem skrypty z wiersza poleceń (wewnątrz ekranu w instancji Linux EC2) i wystąpiły błędy, których nie śledziłem. Chcę „przewinąć w górę” lub wyświetlić więcej historii na ekranie, ale nie mogę znaleźć żadnych poleceń, które mogłyby działać.
Muszę zobaczyć wyjście na ekranie „dalej” niż na obecnym ekranie. CTRL + a powinien wprowadzić mnie w tryb przewijania w ekranie, ale nie działa.
linux
command-line
gnu-screen
history
T. Brian Jones
źródło
źródło
history | less
,more
? Czy pytasz, jak zachować więcej historii?history
zachowa tylko polecenia zostały uruchomione w powłoce. Bardziej pyta o rejestrowanie takich rzeczy<Shift>
+<PgUp>
jest jedyną opcją. I ma też pewien limit (chyba 500 ostatnich linii).Ctrl-a
toscreen
„s ucieczki. Cała sekwencja klawiszy, aby przejść do trybu przewijania, byłabyCtrl-a
[
, jak mówi opyate.Ctrl-a
ESC
działa również dla mnie, nie pamiętam, który jest standardowy / powszechnie używany.Odpowiedzi:
Po uruchomieniu ekranu możesz określić rozmiar bufora przewijania za pomocą opcji -h, aby zwiększyć go z domyślnej wartości 100 linii. Jednak przy aktualnie uruchomionym ekranie, gdy dane opuściły bufor, znikają.
źródło
Ctrl+a+[
. Twoja odpowiedź sprawia wrażenie, jakby to było niemożliwe, co wprowadza w błąd.Zakładając, że nie zastąpiłeś sekwencji ucieczki, możesz nacisnąć,
Ctrl-a [
aby przejść do trybu przewijania, a następnie użyć zwykłego Page-UP / Page-DOWN lub Ctrl-b / Ctrl-f, aby przejść w górę i w dół.Z wiki Gentoo na temat korzystania z ekranu
źródło
Ctrl
+A
,Esc
również wchodzi w tryb kopiowania / przewijania.Możesz także uruchomić swoje polecenia w
script
poleceniu, które zapisze dane wyjściowe na dysku. Lub możesz:command 2>&1 | tee /tmp/cmd.out
aby zapisać dane wyjściowe do przyszłego dochodzenia, chciałeś (praktycznie) nieskończonej wielkości historii wyników.źródło
W uzupełnieniu innych odpowiedzi pragnę podkreślić, że możesz dodać w swoim
~/.screenrc
pliku:gdzie:
defscrollback 100000
: ustaw domyślną liczbę linii przewijania na100000
termcapinfo xterm ti@:te@
: zezwól na przewijanie terminala w Xterm lub PuTTY. ( FAQ ekranu ; FAQ PuTTY )źródło
screen
polecenie i rzeczy, które zrobiłem przed ekranem. Próbowałem równieżscreen -h
, ten sam wynik. Jakieś pomysły?control
+,a
a następnieESC
jestem w stanie przewijać kursor wewnątrz tekstu. Nie działa przewijanie za pomocą myszy za pomocą suwaków terminala Mac z boku. Dzięki!Możesz także zmienić rozmiar historii przewijania na uruchomionym ekranie za pomocą sekwencji
CTRL-a
:
(przejdź do trybu wiersza poleceń na ekranie), a następnie,scrollback 10000
jeśli chcesz 10 000 linii bufora historii. Zmiana obowiązuje natychmiast.Uważaj na zużycie pamięci, jeśli używasz wielu ekranów z bardzo długimi buforami.
Jednak, jak powiedział @William Pursell, z aktualnie uruchomionym ekranem, gdy dane opuściły bufor, zniknęły.
źródło
W zależności od używanego programu terminalowego zwykle można zmienić bufor przewijania w Ustawieniach. Wiem, że
xterm
najpierw musisz włączyć przewijanie, a potem możesz ustawić bufor na nieskończoność.Najlepszym rozwiązaniem dla skryptów rejestrujących byłoby jednak przekierowanie standardowego wyjścia do pliku:
W ten sposób możesz swobodnie przewijać i wyszukiwać, a także prowadzić rejestr (np. Na wypadek awarii komputera).
EDYCJA: Jest to zbliżone do powyższego rozwiązania rurociągów, jednak przekierowanie standardowego wejścia może być przydatne również w innych przypadkach:
lub
źródło
screen(1)
nie pozwala na przewijanie terminala. To zarówno jedna z jego głównych cech, jak i jedna z głównych wad.Używając terminala macOS nie byłem w stanie użyć suwaków z boku, aby zobaczyć historię tekstu.
Byłem w stanie przewijać kursor wewnątrz tekstu za pomocą ↑i ↓ po naciśnięciu CRTL+, aa następnie ESC.
Musiałem to dodać,
~/.screenrc
aby umożliwić przewijanie myszy z poziomu okna (wciąż nie z suwakami):źródło