Jak mogę częściowo wyczyścić przewijanie terminala?

40

Chcę częściowo wyczyścić historię przewijania w terminalu, ale tylko z miejsca, w którym wybrałem za pomocą myszy w przewijaniu i w górę. czy to możliwe? Jestem na komputerze Mac i używam iTerm2 i terminalu.

Javid Jamae
źródło
1
bashnie ma pojęcia przewijania; tym zarządza emulator terminala.
chepner,
@chepner - ok, dobra uwaga. Właśnie przerobiłem pytanie, żeby nie było o bashu.
Javid Jamae,

Odpowiedzi:

79

Nie jestem pewien co do części, ale możesz w pełni wyczyścić przewijanie za pomocą Cmd+ K. Control+ Lwyczyści tylko ekran, a nie zawartość / historię / bufor przewijania.

Jeśli chcesz częściowego scrollback wystarczająco źle, to będzie prawdopodobnie miejsce do jej wykonania.

Luqmaan
źródło
1
Dzięki, ale stary, to jakiś paskudny kod! Nie sądzę, żebym kiedykolwiek chciał czegoś tak bardzo, że musiałbym dostać się do tej bazy kodów. :-)
Javid Jamae,
26

Jeśli inni przybyli tutaj, szukając sekwencji ucieczki, takiej jak Command-K w iTerm 2, możesz użyć

printf '\e]50;ClearScrollback\a'

printf '\ec'i clear;printf '\e[3J'pracować w Terminalu, ale nie w iTerm 2.

Lri
źródło
1
Co to ma wspólnego z częściowym usunięciem przewijania?
Javid Jamae
11
To pytanie było jednym z najlepszych wyników Google dla iterm clear scrollback.
Lri
spowoduje to, że tekst zacznie migać, jeśli natychmiast wydrukujesz to, co właśnie wyczyściłeś. ale to działa!
Andy,
Właśnie tego szukałem. Chciałbym móc dwukrotnie cię głosować!
Zeki,
OP chce częściowego przewinięcia, które, o ile wiem, nie jest dostępne.
Dylan_Larkin
0

Nie jest to możliwe, ale możesz wyczyścić tylko ekran, naciskając Control+ L.

Mark Stewart
źródło
-1

To polecenie najprawdopodobniej da ci możliwe pliki historii. Możesz go otworzyć w edytorze tekstu i edytować.

ls -a ~ | grep hist
iozozturk
źródło
Witamy w Super User! Przeczytaj ponownie pytanie - OP pyta o przewijanie, a nie historię.
bertieb
-3

Jeśli dobrze zrozumiałem pytanie, myślę, że można to osiągnąć poprzez ręczną edycję pliku historii, ~/.bash_history.

PS: Aby zapisać bieżącą sesję, musisz najpierw zamknąć Terminal.

dezzeus
źródło
4
Nie, myślę, że źle zrozumiałeś. Plik .bash_history służy do historii poleceń, a nie do historii przewijania terminala.
Javid Jamae,