我打开了几个终端。我想将这些终端中的进程发送到会话,tmux
而不是保存、关闭、重新启动tmux
,然后让进程恢复到当前状态。
如何将正在运行的非 tmux 进程附加到tmux
会话?
答案1
reptyr
应该可以完成这项工作。参见github
找出要传输的作业的进程 ID。我通常通过输入以下内容来执行此操作
ps -p | grep programname
然后转到 tmux 会话、窗口、窗格......并插入:
reptyr PID
PID
你刚刚找到的进程 ID 在哪里?
该工作流程应该是可编写脚本的。
如果出现某些消息,表明它不起作用:
Unable to attach to pid 4625: Operation not permitted
The kernel denied permission while attaching
...
以 root 身份输入以允许上述操作:
echo 0 > /proc/sys/kernel/yama/ptrace_scope