Created
January 16, 2011 23:29
-
Star
(111)
You must be signed in to star a gist -
Fork
(22)
You must be signed in to fork a gist
-
-
Save zaius/782263 to your computer and use it in GitHub Desktop.
How to redirect a running process output to a file and log out
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ctrl-z | |
bg | |
touch /tmp/stdout | |
touch /tmp/stderr | |
gdb -p $! | |
# In GDB | |
p dup2(open("/tmp/stdout", 1), 1) | |
p dup2(open("/tmp/stderr", 1), 2) | |
detach | |
quit | |
# Back in shell | |
disown | |
logout |
Thomas, I think you missed the point of the gist. This makes sense if you have a process already running and later realize you need to disown it without losing its output. I for one run into this problem often and I really like this solution.
This was linked on Hacker News and in the comments there julian37 pointed out that someone created a bash script to do this called "Dupx".
http://www.isi.edu/~yuri/dupx/
Edit: And of course, thank you to bringing this tool to my attention. Very useful.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Yeah it's definitely cleaner to do it that way, if you're organized :) I would make it even a simpler and just run it in screen or tmux. Though I know I regularly start long-running tasks before realizing how long they are going to take, so this is a quick hack to get around it.