编写 GNU Screen 会话脚本

编写 GNU Screen 会话脚本

我有几个 VM 映像,我会在我的 FreeBSD 9.0 文件服务器上定期运行它们。

我编写了脚本,可以用我想要的设置(startUbuntuVMstartWindowsVM)启动它们。

我想编写一个执行以下操作的脚本:

1) Start a screen session named 'virtualbox'
2) Add one window named 'Ubuntu' that runs the 'startUbuntuVM' command.
3) Add a second window named 'Windows' that runs the 'startWindowsVM' command.

我已经看到了屏幕的 -X 标志,但据我所知,它只能在另一个正在运行的屏幕进程中起作用。

有什么方法可以做我想做的事吗?我不想在 .screenrc 中编写脚本,因为我只希望在需要时执行此操作,而不是在每次屏幕会话启动时执行此操作。

答案1

像下面这个脚本吗?

#!/bin/bash
[ -z "$STY" ] && exec screen -S virtualbox "$0" "$@"

screen -t Ubuntu ./startUbuntuVM
screen -t Windows ./startWindowsVM

# uncomment following line to detach from screen
#screen -d

相关内容