【问题标题】:Restart tmux sessions in Ubuntu (running Python)在 Ubuntu 中重新启动 tmux 会话(运行 Python)
【发布时间】:2019-07-17 15:40:18
【问题描述】:

我的 Ubuntu 服务器上的 tmux 中有五个后台进程正在运行。每个窗格都是一个 Python 脚本,它是一个永无止境的 while 循环。

$ tmux ls
process1: 1 windows (created Fri Dec 14 10:12:40 2018) [143x31]
process2: 1 windows (created Fri Jan 11 10:23:55 2019) [128x30]
process3: 1 windows (created Sun Feb 10 13:30:03 2019) [143x33]
process4: 1 windows (created Tue Dec 18 22:41:50 2018) [145x33]
process5: 1 windows (created Mon Jan 14 15:42:04 2019) [143x33]

是否有停止和启动或重新启动所有服务的命令?而不是进入每一个并手动停止和重新启动它?

谢谢

【问题讨论】:

    标签: python ubuntu ssh tmux


    【解决方案1】:

    最简单的方法可能涉及

    bind-key * set-window-option synchronize-pane
    

    此绑定(或您选择设置的任何其他键)将允许您输入 <prefix>* 以开始在窗口中的所有窗格中输入。 (再次使用<prefix>* 撤消此功能)

    对于您的用例,要停止所有这些,您可以通过按字面意思按 Ctrl+C 将 C-C 发送到所有窗格。要重新启动所有进程,只需点击向上箭头以返回每个窗格的历史记录(或输入!!,如果您愿意),然后点击Enter 重新启动它们。

    这假设启动每个进程在每个窗格中使用相同数量的命令。

    我已经检查过了,但我找不到让 tmux 窗格重新启动其当前进程的方法; tmux 似乎对它所显示的终端了解不够,无法提供更有弹性的答案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      相关资源
      最近更新 更多