如何创建一个包含多个 windows 的 GNU 屏幕会话?
how to create a GNU screen session with multi windows in it?
我总是在屏幕会话中与一些 windows、一个用于 shell、一个用于 mysql、一个用于音乐播放器、一个用于 irc,等等。 .
问题是,当您创建一个屏幕会话时,它默认只创建一个 window。所以我必须执行 Ctrl-a c
然后发出命令,一次又一次。
所以我写了一个 bash 函数来做到这一点。
d(){
local i=workspace
screen -qls $i
if [ "$?" -ne 11 ];then
screen -dmS $i
screen -S $i -X screen mysql -uroot -p
screen -S $i -X screen irssi
screen -S $i -X screen nvlc $music -Z
screen -r $i -p0
else
screen -r $i
fi
}
我的问题是,有没有办法与 some windows 开始新的屏幕会话?对于这个问题,我的意思是 new session,不适用于使用“-X
”的现有会话。而且,屏幕内置功能,我的意思是,不涉及 shell 脚本。
一开始我没有考虑.screenrc文件,因为每次调用screen都会调用里面的命令,但有时我需要用不同的东西创建一个新的screen会话。
我忘了一件事,我可以选择配置文件。
所以我认为答案是:
d(){
screen -d -R -S workspace -c ~/.workspace
}
~/.workspace 的内容应该是:
screen
screen mysql -uroot -p
screen irssi
screen nvlc
select 0
我总是在屏幕会话中与一些 windows、一个用于 shell、一个用于 mysql、一个用于音乐播放器、一个用于 irc,等等。 .
问题是,当您创建一个屏幕会话时,它默认只创建一个 window。所以我必须执行 Ctrl-a c
然后发出命令,一次又一次。
所以我写了一个 bash 函数来做到这一点。
d(){
local i=workspace
screen -qls $i
if [ "$?" -ne 11 ];then
screen -dmS $i
screen -S $i -X screen mysql -uroot -p
screen -S $i -X screen irssi
screen -S $i -X screen nvlc $music -Z
screen -r $i -p0
else
screen -r $i
fi
}
我的问题是,有没有办法与 some windows 开始新的屏幕会话?对于这个问题,我的意思是 new session,不适用于使用“-X
”的现有会话。而且,屏幕内置功能,我的意思是,不涉及 shell 脚本。
一开始我没有考虑.screenrc文件,因为每次调用screen都会调用里面的命令,但有时我需要用不同的东西创建一个新的screen会话。
我忘了一件事,我可以选择配置文件。 所以我认为答案是:
d(){
screen -d -R -S workspace -c ~/.workspace
}
~/.workspace 的内容应该是:
screen
screen mysql -uroot -p
screen irssi
screen nvlc
select 0