在我的普通shell中,我创建了tmux会话以在后台运行
tmux new-session -d -s my-session my-script.sh (1)
现在,我想将所有通过pipe-pane
输出的日志记录添加到会话中。我知道如何在不分离的会话中进行此操作(当在内部 tmux中时):
Ctrl-B : pipe-pane -o 'cat >>~/tmp/output.log' (2)
但是我如何通过创建(1)告诉tmux 创建一个分离的会话直接添加pipe-pane
tmux命令?
我基本上在我的普通shell中寻找一种使用日志记录创建分离的tmux会话的方法。 -我正在使用tmux 1.6。
答案 0 :(得分:1)
您始终可以将两个命令组合为一个tmux命令(我没有tmux 1.6可以对其进行测试,但它适用于2.2):
tmux new-session -d -s my-session my-script.sh \; pipe-pane -o 'cat >>~/tmp/output.log'
如果您使用的是tmux 2.9或更高版本,则可以设置一个钩子以在新会话开始时运行命令。放入您的〜/ .tmux.conf
set-hook -g session-created "pipe-pane -o 'cat >>~/tmp/output.log'"
要处理许多会话,您可以在文件名中包含会话名称,例如output.#{session_name}.log
。