I have a bg process disowned like so:
(idea "$code_home/jenkins-jobs" ) & disown
The problem is it will start writing its stdout/stderr to the terminal from which I launched it. I would have guessed that disowning a process would tell it to write its stdio to /dev/null unless instructed to write it somewhere.
So my question is - how do I completely disown a process so it stops interacting with my terminal altogether? Is it enough to do something like this?
(idea "$code_home/jenkins-jobs" &> /dev/null ) &> /dev/null & disown
some_program >/dev/null 2>&1 </dev/null & disown
is sufficient -- you're forgetting theI
in "stdio"disown
doesn't do anything else than make bash forget about a job. The disowned process(es) have no clue that they have been disowned.disown
will NOT magically cause them to redirect their i/o, stop interacting with the user, survive HUP signals, ignore TTIN signals or other marvelous actions.