Creating new windows that run programs in screen

和自甴很熟 提交于 2019-12-11 06:38:52

问题


My .screenrc has some initialization code that opens some windows. It's neat.

What I want to do, while running screen is simply , with one command open a new screen window that is running a program.

It SHOULD be:

screen -t 'CADMIN' sudo cherokee-admin -b

This actually works, except that it also runs my .screenrc and opens up all of my windows in a nested screen. FAIL.

I know I could use

^c ( to create a new window )   
^cA ( to title it )   
sudo cherokee-admin -b   

and get the same effect, but I'd like to bring a little elegance to my life, which is why I use screen and not some multi terminal thing.

Ideas?


回答1:


Ok, I've got a somewhat palatable answer:

from the bugs page there is a discussion about problems using the screen -t invocation.

I've tried this and I find that screen -c /dev/null -t CADMIN sudo cherokee-admin -b actually works the way I originally thought it would. It's kind of nifty actually, -c calls nothing for the value of .screenrc, which does not open my glorious screen rig. I can live with this.




回答2:


You could setup another .screenrc file that doesn't have all of the other windows in it then in your .bash_profile you could add something like:

alias scn="screen -c '.screenrc2' -t 'CADMIN' sudo cherokee-admin -b"

then all you would have to do is run $scn from the cli to open screen with the desired effect.

hope this helps

edit: Make sure you name the second .screenrc file something different (i.e. '.screenrc2')



来源:https://stackoverflow.com/questions/995803/creating-new-windows-that-run-programs-in-screen

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!