在我的普通 shell 中,我创建 tmux session 以在后台运行
tmux new-session -d -s my-session my-script.sh (1)
现在我想通过 pipe-pane
将所有输出的日志记录添加到 session 中。我知道如何在非分离 session 中执行此操作(当在 tmux 中时):
Ctrl-B : pipe-pane -o 'cat >>~/tmp/output.log' (2)
但是我如何告诉 tmux 创建分离 session 时(通过 (1))立即添加 pipe-pane
tmux 命令?
我基本上在我的普通 shell 中寻找一种方法来创建带有日志记录的分离的 tmux session 。 - 我正在使用 tmux 1.6。
最佳答案
您始终可以将这两个命令合并为一个 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 或更高版本,您可以设置一个 Hook 以在新 session 启动时运行命令。放入 ~/.tmux.conf
set-hook -g session-created "pipe-pane -o 'cat >>~/tmp/output.log'"
为了处理许多 session ,您可以在文件名中包含 session 名称,例如输出.#{session_name}.log
.
关于shell - 如何告诉 tmux 在创建新的分离 session 时发出另一个 tmux 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57032431/