我正在做一个由几个服务组成的服务器端项目。每个服务都是在交互(即非守护进程)模式下运行的,这在主动开发时非常方便。这个项目在virtualenv中。因此,启动服务的典型方法是:
$ cd ~/to/vitualenv/subdir/where/service/code/located
$ source ../path/to/virtualenv/bin/activate
$ ./script-to-start-service
+ Set title of terminal to the service name via GUI
如果有2-3个服务就可以了。但我们有一打。在计算机重新启动后重新启动所有这些程序真的很痛苦。在
所以我想要的是一个脚本,一旦执行,它就会打开一个新的gnome终端窗口,其中有十几个命名选项卡(每个服务一个),每个选项卡中都有激活的virtualenv,并在这些选项卡中运行一堆服务实例。到目前为止,我得到的最好结果是:
^{pr2}$--title和--profile看起来被忽略了,如果指定了--command,则新打开的窗口在打开后立即关闭。在
有什么想法吗?如何获取激活脚本的源代码,给一个标题,并运行服务?在
注:它只用于开发目的,不用于在实际服务器上部署。在
创建一个名为“service”的gnome终端概要文件(Edit>;Profiles>;New)。在
在“编辑”>;“配置文件首选项”>;“标题和命令”>;“运行自定义命令”而不是“我的shell”中,将“自定义”命令设置为:
然后使用gnome终端启动您的服务。下面的命令在不同目录的选项卡中启动
^{pr2}$yes
的两个实例。我已将命令分成三行,但您应该将其作为一行输入。在您可能不想直接调用activate,而是要创建一个文件用作自定义命令:
^{3}$您还可以添加命令(如更改目录或启动服务)。只要注意,每次打开具有该概要文件的终端时,这些命令都会被执行。在
以下内容适用于我,并按您的要求执行:
gnome-terminal working-directory=/path/to/wd tab-with-profile=profile1 title=title1 -e 'bash rcfile /path/to/rcfile1.sh' tab-with-profile=profile2 title=title2 -e 'bash rcfile /path/to/rcfile2.sh'
相关问题 更多 >
编程相关推荐