Come posso cercare all'interno del buffer di uscita di una shell tmux?
Non riesco a farlo funzionare. Come posso cercare il buffer di una shell tmux?
Non riesco a farlo funzionare. Come posso cercare il buffer di una shell tmux?
Per cercare nel buffer della cronologia tmux
per la finestra corrente, premi Ctrl-b [ per inserire copy mode
.
Se stai usando le associazioni di tasti di emacs (il default), premi Ctrl-s poi digita la stringa da cercare e premi Invio. Premete n per cercare di nuovo la stessa stringa. Premete Shift-n per la ricerca inversa. Premete Escape due volte per uscire da copy mode
. Puoi usare Ctrl-r per cercare in senso inverso. Nota che poiché tmux
ha il controllo della tastiera in copy mode
, Ctrl-s funziona indipendentemente dall'impostazione di stty ixon
(che mi piace avere come stty -ixon
per abilitare le ricerche in avanti in Bash).
Se stai usando le associazioni di tasti di vi (Ctrl-b:set-window-option -g mode-keys vi
), premi / poi digita la stringa da cercare e premi Invio. Premi n per cercare di nuovo la stessa stringa. Premete Shift-n per la ricerca inversa come in modalità emacs. Premere q due volte per uscire da copy mode
. Puoi usare ? per cercare nella direzione inversa.
Se volete passare a una finestra in base a qualcosa che vi viene visualizzato (questo include anche i nomi e i titoli delle finestre ma non la cronologia), (iniziando con più di una finestra aperta) premete Ctrl-b f poi digitate la stringa da cercare e premete Invio. Sarete passati a una finestra che contiene quel testo, se viene trovato. Se più di una finestra corrisponde, vedrete un elenco da cui scegliere.
Entrare in modalità copia e iniziare a cercare in un colpo solo
bind-key / copy-mode \; send-key ?
permette di fare solo:
Ctrl + B /
e iniziare a digitare il termine di ricerca.
Dump su un file e uso vim
Quando le cose si fanno più complesse, voglio solo usare un editor appropriato: 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
Ora P
scarica il buffer su un file, e poi devo solo:
vim /tmp/tmux
Testato in tmux 2.6.