2011-01-09 16:57:06 +0000 2011-01-09 16:57:06 +0000
195
195

Jak mogę wyszukiwać w buforze wyjściowym powłoki tmux?

Nie mogę sprawić, żeby to działało. Jak mogę przeszukać bufor w powłoce tmux?

Odpowiedzi (2)

304
304
304
2011-01-10 01:56:25 +0000

copy mode search

Aby szukać w buforze historii tmux dla bieżącego okna, naciśnij Ctrl-b [ aby wpisać copy mode.

Jeśli używasz przypisań klawiszy emacsa (domyślnie), naciśnij Ctrl-s, a następnie wpisz szukany łańcuch i naciśnij Enter. Naciśnij n, aby ponownie wyszukać ten sam łańcuch. Naciśnij Shift-n dla szukania wstecz. Naciśnij Escape dwa razy, aby wyjść z copy mode. Możesz użyć Ctrl-r do szukania w odwrotnym kierunku. Zauważ, że ponieważ tmux kontroluje klawiaturę w copy mode, Ctrl-s działa niezależnie od ustawienia stty ixon (które ja lubię mieć jako stty -ixon, aby umożliwić wyszukiwanie w przód w Bashu).

Jeśli używasz przypisań klawiszy vi (Ctrl-b:set-window-option -g mode-keys vi), naciśnij /, a następnie wpisz łańcuch do wyszukania i naciśnij Enter. Naciśnij n, aby ponownie wyszukać ten sam łańcuch. Naciśnij Shift-n dla wyszukiwania wstecz, jak w trybie emacs. Naciśnij q dwa razy, aby wyjść z copy mode. Możesz użyć ? do szukania w odwrotnym kierunku.

find-window

Jeśli chcesz przełączyć się do okna na podstawie czegoś, co jest w nim wyświetlane (dotyczy to także nazw i tytułów okien, ale nie historii), (zaczynając z otwartym więcej niż jednym oknem) naciśnij Ctrl-b f, a następnie wpisz szukany łańcuch i naciśnij Enter. Zostaniesz przełączony do okna zawierającego ten tekst, jeśli zostanie on znaleziony. Jeśli więcej niż jedno okno pasuje, zobaczysz listę, z której możesz wybrać.

10
10
10
2017-09-24 04:53:26 +0000

Wejdź w tryb kopiowania i rozpocznij wyszukiwanie za jednym zamachem

bind-key / copy-mode \; send-key ?

pozwala na zrobienie po prostu:

Ctrl + B /

i rozpoczęcie wpisywania szukanej frazy.

Zrzuć do pliku i użyj vima

Gdy sprawy stają się bardziej skomplikowane, chcę użyć odpowiedniego edytora: https://unix.stackexchange.com/questions/26548/write-all-tmux-scrollback-to-a-file

bind-key P 'capture-pane' \; capture-pane -S - \; save-buffer /tmp/tmux \; delete-buffer

Teraz P zrzuca bufor do pliku, a potem po prostu:

vim /tmp/tmux

Testowane w tmux 2.6.