Câu hỏi Làm thế nào tôi có thể tìm kiếm trong bộ đệm đầu ra của một tmux shell?


Tôi không thể làm việc này được. Làm thế nào tôi có thể tìm kiếm bộ đệm của một tmux shell?


135
2018-01-09 16:57


gốc


Phiên bản nào của tmux (tmux -V)? Tôi tin rằng điều này đã được thêm vào trong phiên bản 0.9. - Dennis Williamson
@Dennis là 1,3-1 - NES
Tìm phiên bản với tmux -V chỉ hoạt động trong các phiên bản sau. Trong Ubuntu / Debian bạn có thể làm: dpkg -l | grep tmux - Niels Bom


Các câu trả lời:


tìm kiếm chế độ sao chép

Để tìm kiếm trong tmux bộ đệm lịch sử cho cửa sổ hiện tại, nhấn Ctrl- -b  [ nhập copy mode.

Nếu bạn đang sử dụng các ràng buộc khóa emacs (mặc định), nhấn Ctrl- -S sau đó nhập chuỗi để tìm kiếm và nhấn Đi vào. nhấn n để tìm kiếm cùng một chuỗi một lần nữa. nhấn Bỏ trốn hai lần để thoát copy mode. Bạn có thể dùng Ctrl- -r để tìm kiếm theo hướng ngược lại. Lưu ý rằng kể từ đó tmux kiểm soát bàn phím trong copy mode, Ctrl- -S hoạt động bất kể stty ixon thiết lập (mà tôi thích có stty -ixon để bật tìm kiếm chuyển tiếp trong Bash).

Nếu bạn đang sử dụng các ràng buộc khóa vi (Ctrl- -b:set-window-option -g mode-keys vi), nhấn / sau đó nhập chuỗi để tìm kiếm và nhấn Đi vào. nhấn n để tìm kiếm cùng một chuỗi một lần nữa. nhấn q hai lần để thoát copy mode. Bạn có thể dùng ? để tìm kiếm theo hướng ngược lại.

cửa sổ tìm kiếm

Nếu bạn muốn chuyển sang cửa sổ dựa trên nội dung được hiển thị trong đó (điều này cũng bao gồm tên cửa sổ và tiêu đề nhưng không bao gồm lịch sử), (bắt đầu với nhiều hơn một cửa sổ đang mở) Ctrl- -b  f sau đó nhập chuỗi để tìm kiếm và nhấn Đi vào. Bạn sẽ được chuyển sang một cửa sổ chứa văn bản đó nếu nó được tìm thấy. Nếu có nhiều hơn một cửa sổ phù hợp, bạn sẽ thấy một danh sách để chọn.


212
2018-01-10 01:56



Làm thế nào tôi có thể thiết lập phong cách ràng buộc? (emacs vs vi) - Daniel Que
@DanielQue: Hãy xem trang man tmux và tìm kiếm "mode-keys" và "status-keys". Đó là các lệnh con cho phép bạn thiết lập kiểu kết buộc. Cách khác, có thể đơn giản hơn để đặt biến môi trường (EDITOR hoặc là VISUAL) theo phong cách bạn muốn trước khi bắt đầu tmux. - Dennis Williamson
Cảm ơn, tôi đã làm việc với set-window-option -g mode-keys vi trong tôi .tmux.conf. Nhưng tôi đã tò mò về biến môi trường thay thế và không thể làm cho nó hoạt động. Có phải là biến môi trường shell hay biến môi trường tmux phải được đặt trong tệp conf? - Daniel Que
@DanielQue: Một biến môi trường shell. Nó sẽ cần phải được xuất khẩu hoặc được đặt trong enmionment của tmux như thế này: VISUAL=vi tmux - Dennis Williamson
Cũng lưu ý rằng không có tìm kiếm regex nào được nêu ra, đây là một vấn đề mở trên đó sourceforge.net/p/tmux/tickets/9 - Elijah Lynn


Vào chế độ sao chép và bắt đầu tìm kiếm trong một lần

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

cho phép bạn làm chỉ:

 Ctrl + B /

và bắt đầu nhập cụm từ tìm kiếm.

Dump vào một tập tin và sử dụng vim

Khi mọi thứ tham gia nhiều hơn, tôi chỉ muốn sử dụng một trình soạn thảo thích hợp: 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

Hiện nay P đổ bộ đệm vào một tệp, và sau đó tôi chỉ:

vim /tmp/tmux

Thử nghiệm trong tmux 2.6.


6
2017-09-24 04:53