W dużym stopniu korzystam z funkcji, aby poruszać się po historii poleceń w moim terminalu; Zastanawiam się, czy istnieje jakiś sposób na nawigację w historii wyników poleceń? (oprócz utrzymywania dużego powiększenia i oparcia się na klawiszu pgup)
Nie mogę po prostu „ponownie uruchomić polecenia”, ponieważ w mojej konkretnej sytuacji zmienia się źródło poleceń; Często muszę patrzeć na wyniki poprzedniej zmiany.
Hacki mile widziane.
Dzięki!
Edytuj 2010:
Uznałem „tee”; spośród wszystkich metod rejestrowania twojej sesji gdzie indziej, jest ona najszerzej stosowana (tj. jest częścią gnu coreutils i nie wymaga konkretnej powłoki lub narzędzia do działania). Tak naprawdę nie tego szukałem, ale zdaję sobie sprawę, że coś takiego tak naprawdę nie istnieje.
Najbliższe przybliżenie, jakie mogę wymyślić, to użyć czegoś takiego jak screen
(byobu / tmux), który loguje się do pliku, i napisać (i przypisać klawiszem) niestandardowe polecenie, aby przeglądać / przeszukiwać ten plik dziennika (pomyśl less
stronicowanie za pomocą monitu zamiast ekranu). Dziękuję wszystkim.
Edytuj 2012:
Odpowiedź Dustina Kirklanda jest zdecydowanie najlepsza, przynajmniej ogólnie; bufor przewijania terminalu jest najmniej inwazyjnym sposobem nawigacji w historii wyników poleceń. Wygląda na to, że Byobu ma zapisaną dużą domyślną liczbę linii historii (10 KB; tmux ma 2 KB, ekran GNU 100) i pozwala na wyszukiwanie wyrażeń regularnych (pobieżny wygląd wskazuje, że ekran GNU nie ma wyszukiwania przewijanego, a tmux ma tylko wyszukiwanie w postaci zwykłego tekstu).
exit
, zamknij terminal, otwórz nowy terminal za pomocą Byobu i nadal miej poprzednią sesję.Możesz użyć,
tee
aby wysłać dane wyjściowe polecenia jednocześnie do pliku i terminala.źródło
Możesz użyć
script
do zalogowania sesji terminala do pliku. Jeśli zawsze chcesz, aby tak się stało, dodaj odpowiedniescript
polecenie do swojego.login
.$ man script
źródło
posługiwać się
screen -L
po wyjściu z sesji powłoki (
exit
polecenia) otrzymujesz plik dziennika w tym samym katalogu, który uruchomiłeśscreen
następnie możesz wyświetlić dane wyjściowe za pomocą
more
lubless -R
źródło
screen
można ustawić na rejestrowanie danych wyjściowych.Jednym ze sposobów jej uruchomienia w ramach uruchomionej
screen
sesji jest naciśnięcie Ctrl- a, a :następnie wprowadzenielog
.Od
man screen
:źródło
bash zachowuje historię tego, co zrobiłeś, ale nie dane wyjściowe z poleceń. Może to być ogromne i często nie jest przydatne.
źródło