I have screenify on my list, and I think it’s a little out-of-order to speak of it before recapping screen proper. And since screenify strikes me as a little less than practical, I’ll just skim through it. There isn’t much to show anyway.
screenify should do much like what reptyr does — yank a running process into another terminal, but I haven’t met with much success.
Documentation is very scant for screenify. I got it to work once, basically following the crude steps in this zsh mailing list reply, but it hasn’t worked since then.
If I understand properly, these are the steps:
- Start your process in one terminal.
- Use CTRL+Z to pause it.
- Then
disown
the process, which should free your terminal and if you’re lucky, show the PID of the free-spinning process. If not, check top or another tool. - Now from within screen, use
screenify PID
and you’ll get some rambling text along with a confirmation. - From yet another shell, issue
kill -CONT PID
, which should redirect the output into your screen session.
Like I said, it worked for me once, but never again. Just dumb luck, I guess.
And processes other than very simple, single-PID, non-console-applications don’t seem to follow through. In other words, bc, htop and alpine all refused to jump between terminals for me.
So I’m not sure what I did. It might be that it works better for you than me, but it will rely on screen in the first place (which I know is not the favorite terminal multiplexer these days) and gdb … at least it did for the Arch version. 🙄
If you get it working or can explain it better, please share. I have a feeling this is another one of those things that will do its job correctly under specific circumstances, and I don’t want to sell it short. 😕
Pingback: Links 19/4/2014: | Techrights