Tmux

tmux 綁定鍵保存輸出

  • October 8, 2020

我想要一個自定義tmux綁定鍵來將螢幕輸出保存到一個唯一的文件中。

這有效

bind-key S capture-pane -S -99999 \; save-buffer /tmp/tmux.txt \; delete-buffer

$但無論是否轉義和括號,這些都不會。

bind-key S capture-pane -S -99999 \; save-buffer $(mktemp --suffix=.txt) \; delete-buffer

bind-key S capture-pane -S -99999 \; save-buffer $(date +'/tmp/tmux-%s.txt') \; delete-buffer

是否有可能做到這一點?

$()由 shell 評估,因此您需要將其作為 shell 命令執行:

bind-key S capture-pane -S -99999 \; run-shell 'tmux save-buffer $(date +"/tmp/tmux-%s.txt")' \; delete-buffer

重要的部分是:

run-shell 'tmux save-buffer $(date +"/tmp/tmux-%s.txt")'

這將啟動一個 shell,展開$(date..)命令,然後告訴 tmux 將緩衝區保存到這個文件中。

引用自:https://unix.stackexchange.com/questions/613549