Użyj iterm2 lub aplikacji terminalowej, która może filtrować wyniki, a nie tylko wyróżniać wyniki

0

Obecnie korzystam z systemu MacOS i używam iterm2 jako aplikacji terminalowej. Ma kilka świetnych funkcji, ale jednym ograniczeniem jest to, że gdy używam ctrl-f do wyszukiwania czegoś, podświetli on wyniki na żółto, ale nie odfiltruje niepasujących wyników. Szukam sposobu na odfiltrowanie wszystkich niepasujących linii za pomocą aplikacji terminalowej. Chodzi mi o to, że wyświetlałby tylko w terminalu rzeczy, które pasowałyby do tego, co było wyszukiwane - co wyeliminuje potrzebę częstego przewijania w górę i w dół.

Czy ktoś wie, czy iterm2 może to zrobić, czy powinienem szukać innej aplikacji terminalowej?

Alexander Mills
źródło
1
Mój wewnętrzny siwobrody Unix mówi, że powinieneś używać do tego narzędzi takich jak grep, zamiast polegać na funkcjach emulatora terminala.
Spiff,
grep nie może wykonać takiego filtru dynamicznego i nie stać mnie na ponowne uruchomienie procesu, czy powinienem po prostu zamknąć serwer? Nie ma sensu. Wiem, co mówisz, ale tylko aplikacja użytkownika końcowego, która faktycznie wyświetla tekst, może wykonać AFAICT.
Alexander Mills
1
Och, więc masz wyjście w buforze przewijania emulatora terminala, którego nie możesz zregenerować? To jest szaleństwo. Zawsze możesz zrobić CMD-A, Cmd-C pbpaste | grep somesearchstring.
Spiff
Chyba muszę nagrać film, żeby się z tym pogodzić. Mogę zwiększyć rozmiar bufora do 100 000 linii, co jest więcej niż wystarczające. Co próbuję zrobić - kiedy szukam „fooxoaogeg”, chcę, aby na terminalu pojawił się tylko jeden wiersz, który pasuje do tego, a następnie, gdy cofnę filtr, na ekranie ponownie pojawią się wszystkie niedopasowane linie.
Alexander Mills
1
Rozumiem dokładnie, czego chcesz, ale nie wiem, czy Terminal.app lub iTerm2 zapewniają GUI (dlatego nie opublikowałem odpowiedzi), więc zapewniłem sposób na zrobienie czegoś bardzo podobnego w dowolny emulator terminala. Mianowicie: zaznacz wszystko, skopiuj (opcjonalnie otwórz tutaj nowe okno), użyj polecenia „pbpaste”, aby wysłać zawartość stołu montażowego (schowka) do standardowego wyjścia, potokuj go do grep i włącz filtr grep do łańcucha lub wyrażenia regularnego, (opcjonalnie zamknij nowe okno tutaj). Nie jest tak słodki, jak chcesz, ale może być dobrym obejściem.
Spiff