After modified screenrc, how to see the changes without restarting screen?

link|improve this question

69% accept rate
feedback

4 Answers

up vote 9 down vote accepted

You could try Ctrl-a : source ~/.screenrc.

Or you could detach and reattach.

link|improve this answer
Sourcing the file should work. Detaching and reattaching will not. – Zed Oct 25 '10 at 19:35
@Zed: But it will re-apply the termcap/terminfo stuff which will not happen when you use source. – Dennis Williamson Oct 25 '10 at 19:36
@Dennis, I tried detaching and reattaching and it didn't work, hence I came to ask this question. Also, using source can open all windows from .screenrc, however it doesn't refresh the session, but creating duplicate windows in one session. Thanks. – garconcn Oct 25 '10 at 22:17
1  
Using "source" is the correct (and only) way to have screen re-read the .screenrc in a running session. Yes, this means it will re-run any commands you have inside it, including commands that create windows or layouts. You could edit the file to comment out the commands that create thew new windows/layouts; source the file; and then un-comment those lines. Of course, if it's the window creation you're wanting to test, you don't have much choice here... – James Polley Oct 25 '10 at 22:46
3  
@garconcn: If this is something you might do frequently, put that stuff (non-screen-creation instructions) in a second file and source it from .screenrc (which will contain your screen creation instructions) for regular startup and when you need to source it again after screen has already started, just do "ctrl-a : source secondary-file" to skip the screen-creation stuff. – Dennis Williamson Oct 25 '10 at 23:53
show 2 more comments
feedback

I have this in my .screenrc file:

bind R eval "source $HOME/.screenrc" "echo '.screenrc reloaded!'"

Which causes screen to reload the .screenrc file when Ctrl-AShift-R is pressed.

Of course, this only works if you've already got the line in your .screenrc file! To 'bootstrap' this sortcut on an existing screen session, add the line above line to your .screenrc file and then follow @Dennis Williamson's answer. After that, you'll be able to use the new keyboard shortcut.

link|improve this answer
feedback

I tried the the option mentioned here - Ctrl-a : source ~/.screenrc and it didn't work for me.

This is what worked for me - Ctrl-a : source $HOME/.screenrc

link|improve this answer
It would be normal to expect ~ to expand to your home directory. – Iain Dec 8 '11 at 11:44
@Iain I know, ideally it should. I guess something was wrong with my ENV then. Nevertheless, it worked. – holydevil Dec 13 '11 at 10:41
feedback

Have you tried opening another putty/ssh session? Or logging in again (e.g. logging in from the screen) ... pretty recursively, cool eh?

link|improve this answer
yes, I use this way, but I will lost my previous session. Thanks. – garconcn Oct 25 '10 at 22:20
if you are logging in from screen, once you exit out of the 2nd screen, you should be back at the prompt of your initial screen. – rumz Oct 26 '10 at 18:14
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.