我需要在VM(Ubuntu 14.04)
中运行多个服务器。我正在使用屏幕来做到这一点。现在,每次我将VM关闭时,我都必须再次启动屏幕。所以,我正在编写一个shell脚本来实现自动化。以下是我现在的脚本
#!/usr/bin/env bash
# Create a screen in detached mode and set default title
screen -d -m -S screenName -t "DjangoServer"
# Start django app in window 0
# Source environment variables for screen shell.
# TODO: Check if this is required.
screen -S screenName -X stuff $"source ~/.profile\n"
# Start virtual environment(virt_env command) exported via ~/.profile
screen -S screenName -X stuff $"virt_env\n"
# Run Django app using grunt
screen -S screenName -X stuff $"grunt\n"
# Start node app in window 1
screen -S screenName -X screen -t "NodeAPI"
screen -S screenName -p 1 -X stuff $"cd /vagrant/node-app\n"
screen -S screenName -p 1 -X stuff $"npm start\n"
# Start a screen running a shell, simply
screen -S screenName -X screen -t "bash"
我是shell脚本的新手,我相信必须有更好的方法来做到这一点。有人能告诉我怎么做。由于命令很少,我不倾向于为在屏幕窗口中运行的命令编写shell脚本。但如果这是标准方式,请建议如何。 TIA。
修改
我也不想修改.screenrc
。
答案 0 :(得分:0)
这非常好,但是也许您应该花一些时间来发现如何通过init(等等)运行系统脚本。 screen
主要供人类食用。