diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2015-03-27 15:01:35 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2015-03-27 15:02:35 -0700 |
commit | 9b2782ca6dcdb756322d50e9ce8f54b50c24ea3e (patch) | |
tree | 27956368f4b1397e78f89eb8117e854aab10fa33 | |
parent | cbed4b33762d9e42f403f3b5d15650ae925faa64 (diff) | |
download | coreutils-9b2782ca6dcdb756322d50e9ce8f54b50c24ea3e.tar.xz |
nohup: clarify stdin redirection
Problem reported by Isaac Schwabacher in:
http://bugs.gnu.org/20214
* doc/coreutils.texi (nohup invocation): Clarify that when nohup's
stdin gets redirected, it's unreadable.
* doc/coreutils.texi (nohup invocation):
* src/nohup.c (usage): Don't promise /dev/null.
-rw-r--r-- | doc/coreutils.texi | 13 | ||||
-rw-r--r-- | src/nohup.c | 2 |
2 files changed, 8 insertions, 7 deletions
diff --git a/doc/coreutils.texi b/doc/coreutils.texi index 6110cecd0..3cbce63c9 100644 --- a/doc/coreutils.texi +++ b/doc/coreutils.texi @@ -16714,12 +16714,13 @@ out. Synopsis: nohup @var{command} [@var{arg}]@dots{} @end example -If standard input is a terminal, it is redirected from -@file{/dev/null} so that terminal sessions do not mistakenly consider -the terminal to be used by the command. This is a GNU -extension; programs intended to be portable to non-GNU hosts -should use @samp{nohup @var{command} [@var{arg}]@dots{} </dev/null} -instead. +If standard input is a terminal, redirect it so that terminal sessions +do not mistakenly consider the terminal to be used by the command. +Make the substitute file descriptor unreadable, so that commands that +mistakenly attempt to read from standard input can report an error. +This redirection is a GNU extension; programs intended to be portable +to non-GNU hosts can use @samp{nohup @var{command} [@var{arg}]@dots{} +0>/dev/null} instead. @flindex nohup.out If standard output is a terminal, the command's standard output is appended diff --git a/src/nohup.c b/src/nohup.c index 9bc868604..8cdacedb8 100644 --- a/src/nohup.c +++ b/src/nohup.c @@ -63,7 +63,7 @@ Run COMMAND, ignoring hangup signals.\n\ fputs (HELP_OPTION_DESCRIPTION, stdout); fputs (VERSION_OPTION_DESCRIPTION, stdout); printf (_("\n\ -If standard input is a terminal, redirect it from /dev/null.\n\ +If standard input is a terminal, redirect it from an unreadable file.\n\ If standard output is a terminal, append output to 'nohup.out' if possible,\n\ '$HOME/nohup.out' otherwise.\n\ If standard error is a terminal, redirect it to standard output.\n\ |