我可以在脚本中创build和操作unix“屏幕”吗?

我在我的Ubuntu笔记本电脑上有一个工作环境,我想用三个不同的屏幕

例如。 在terminal,我通常写

screen -S mywork run_server_1 

然后,按ctrl-a c创build第二个屏幕

 run_server_2 

等等

我想写一个脚本来自动设置这个环境,但是我怎样才能从一个脚本控制多个屏幕?

更新:我真的希望能够从一个shell脚本,而不是屏幕configuration。 文件。 有没有办法做到这一点?

阅读手册页和教程有帮助

我会说你想要做的是创build一个文件$ HOME / .screenrc.multiwin

 # read in your normal screenrc # before anything else source $HOME/.screenrc # now start opening windows # it's possible to set the window title with # the -t option # you can also specify the window number # to launch in screen -t server1 5 run_server_1 screen -t server2 6 run_server_2 

然后运行

 screen -c $HOME/.screenrc.multiwin 

会做你所需要的

命令可以从外部通过使用screen -S sessionname -X command实例screen -S mywork -X screen run_server_2将创build一个新窗口(与ctrl-a c相同),但该窗口将执行run_server_2。 与手动操作不同,在该窗口中不会运行shell,所以当run_server_2退出时,窗口将被closures。

控制多个屏幕只是确保它们都以-S命名

我相信tmux比屏幕更容易编写这种types的目的。 tmux程序在命令行中接受自己的命令作为参数,例如,启动两个窗口:“tmux new-session -d'/ bin / bash'\; new-window -d'top'”。 在第一个窗口中,它会运行一个交互式的“bash”shell,在第二个窗口中运行“top”。