如何创建一个终端窗口,每个长时间运行的脚本有一个选项卡,我可以使用 ctrl-C 单独终止该脚本并重新启动?

如何创建一个终端窗口,每个长时间运行的脚本有一个选项卡,我可以使用 ctrl-C 单独终止该脚本并重新启动?

我正在开发一个需要运行许多长时间运行的脚本的应用程序,其中一些我想不时重新启动。目前,我正在尝试gnome-terminal解决这个问题,所以我创建了一个启动脚本,如下所示:

#!/bin/bash -e
cd `hg root`

gnome-terminal \
  --tab \
    --working-directory=$PWD \
    --title run-server \
    -e ./bin/run-server.sh \
  --tab \
    --working-directory=$PWD \
    --title run-client \
    -e ./bin/run-client.sh \

# etc.

这将创建我想要的窗口和选项卡集,因此最初,一切看起来都很棒。问题是,当我在第一个选项卡中按 ctrl-C 来终止服务器时,它会关闭该选项卡。我想要发生的是./bin/run-server.sh死亡,然后我应该能够按下然后进入(因为这应该是我历史上的最后一件事)重新开始。

有没有办法gnome-terminal在 Ubuntu 上使用或等效的方法来做到这一点?

答案1

看一下屏幕。特别是,它提供了创建新“选项卡”并对现有选项卡执行操作的可编写脚本的方法。

答案2

您了解 crontab 及其运行不附加到任何终端的程序的能力吗?可以将输出捕获到日志文件中,然后根据需要进行查看、greped 和其他操作。请参阅我的回答使用 crontab

相关内容