Den*_*son 382
要在tmux
历史缓冲区中搜索当前窗口,请按Ctrl-b [进入copy mode
。
如果您使用的是 emacs 键绑定(默认),请按Ctrl-s然后键入要搜索的字符串并按Enter。按n可再次搜索相同的字符串。按Shift-n进行反向搜索。按Escape两次退出copy mode
。您可以使用Ctrl-r反向搜索。请注意,因为tmux
在copy mode
, Ctrl-中控制键盘,s无论stty ixon
设置如何(我喜欢stty -ixon
在 Bash 中启用向前搜索)。
如果您使用 vi 键绑定 ( Ctrl- b:set-window-option -g mode-keys vi
),请按/然后键入要搜索的字符串并按Enter。按n可再次搜索相同的字符串。按Shift-n在 emacs 模式下进行反向搜索。按q两次退出copy mode
。您可以使用?反向搜索。
如果您想根据其中显示的内容切换到一个窗口(这也包括窗口名称和标题,但不包括历史记录),(从打开的多个窗口开始)按Ctrl-b f然后键入要搜索的字符串并按Enter。如果找到,您将切换到包含该文本的窗口。如果有多个窗口匹配,您将看到一个可供选择的列表。
Cir*_*郝海东 22
进入复制模式,一键开始搜索
bind-key / copy-mode \; send-key ?
Run Code Online (Sandbox Code Playgroud)
允许您只做:
Ctrl + B /
Run Code Online (Sandbox Code Playgroud)
并开始输入搜索词,这将搜索(最先搜索最新行)。
转储到文件并使用 vim
当事情变得更复杂时,我只想使用合适的编辑器: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
Run Code Online (Sandbox Code Playgroud)
现在P
将缓冲区转储到一个文件中,然后我只是:
vim /tmp/tmux
Run Code Online (Sandbox Code Playgroud)
我们可以通过自动打开 vim 以及pkfm 的建议来进一步自动化:
bind-key v 'capture-pane' \; \
capture-pane -S - \; \
save-buffer /tmp/tmux \; \
delete-buffer \; \
send-keys Escape 'ddivim /tmp/tmux' Enter
Run Code Online (Sandbox Code Playgroud)
这假设您的 shell处于 vi 模式,因此:
dd
清除任何现有命令i
进入插入模式vim /tmp/tmux
在 tmux 3.0 中测试。
归档时间: |
|
查看次数: |
171978 次 |
最近记录: |