Provided by: manpages-posix_2.16-1_all bug

NAME

       nohup - invoke a utility immune to hangups

SYNOPSIS

       nohup utility [argument...]

DESCRIPTION

       The  nohup  utility  shall invoke the utility named by the utility operand with arguments supplied as the
       argument operands. At the time the named utility is invoked,  the  SIGHUP  signal  shall  be  set  to  be
       ignored.

       If  the  standard  output  is  a terminal, all output written by the named utility to its standard output
       shall be appended to the end of the file nohup.out in the  current  directory.  If  nohup.out  cannot  be
       created  or  opened  for  appending, the output shall be appended to the end of the file nohup.out in the
       directory specified by the HOME environment variable. If neither  file  can  be  created  or  opened  for
       appending, utility shall not be invoked. If a file is created, the file's permission bits shall be set to
       S_IRUSR | S_IWUSR.

       If  the standard error is a terminal, all output written by the named utility to its standard error shall
       be redirected to the same file descriptor as the standard output.

OPTIONS

       None.

OPERANDS

       The following operands shall be supported:

       utility
              The name of a utility that is to be invoked. If the utility  operand  names  any  of  the  special
              built-in utilities in Special Built-In Utilities , the results are undefined.

       argument
              Any string to be supplied as an argument when invoking the utility named by the utility operand.

STDIN

       Not used.

INPUT FILES

       None.

ENVIRONMENT VARIABLES

       The following environment variables shall affect the execution of nohup:

       HOME   Determine  the  pathname  of  the  user's  home  directory: if the output file nohup.out cannot be
              created in the current directory, the nohup utility shall use  the  directory  named  by  HOME  to
              create the file.

       LANG   Provide  a  default  value for the internationalization variables that are unset or null. (See the
              Base Definitions volume of IEEE Std 1003.1-2001, Section 8.2, Internationalization  Variables  for
              the  precedence  of  internationalization  variables  used  to  determine  the  values  of  locale
              categories.)

       LC_ALL If set to a non-empty string value, override the values  of  all  the  other  internationalization
              variables.

       LC_CTYPE
              Determine  the locale for the interpretation of sequences of bytes of text data as characters (for
              example, single-byte as opposed to multi-byte characters in arguments).

       LC_MESSAGES
              Determine the locale that should be used to affect the format and contents of diagnostic  messages
              written to standard error.

       NLSPATH
              Determine the location of message catalogs for the processing of LC_MESSAGES .

       PATH   Determine  the  search  path  that  is  used  to  locate  the  utility to be invoked. See the Base
              Definitions volume of IEEE Std 1003.1-2001, Chapter 8, Environment Variables.

ASYNCHRONOUS EVENTS

       The nohup utility shall take the standard action for all signals except that SIGHUP shall be ignored.

STDOUT

       If the standard output is not a terminal, the standard output of  nohup  shall  be  the  standard  output
       generated  by the execution of the utility specified by the operands. Otherwise, nothing shall be written
       to the standard output.

STDERR

       If the standard output is a terminal, a message shall be written to the standard  error,  indicating  the
       name of the file to which the output is being appended. The name of the file shall be either nohup.out or
       $HOME/nohup.out.

OUTPUT FILES

       If  the standard output is a terminal, all output written by the named utility to the standard output and
       standard error is appended to the file nohup.out, which is created if it does not already exist.

EXTENDED DESCRIPTION

       None.

EXIT STATUS

       The following exit values shall be returned:

       126    The utility specified by utility was found but could not be invoked.

       127    An error occurred in the nohup utility or the utility specified by utility could not be found.

       Otherwise, the exit status of nohup shall be that of the utility specified by the utility operand.

CONSEQUENCES OF ERRORS

       Default.

       The following sections are informative.

APPLICATION USAGE

       The command, env, nice, nohup, time, and xargs utilities have been specified to use exit code 127  if  an
       error  occurs  so  that  applications  can  distinguish "failure to find a utility" from "invoked utility
       exited with an error indication". The value 127 was chosen because it is  not  commonly  used  for  other
       meanings;  most  utilities use small values for "normal error conditions" and the values above 128 can be
       confused with termination due to receipt of a signal. The value 126 was chosen in  a  similar  manner  to
       indicate that the utility could be found, but not invoked. Some scripts produce meaningful error messages
       differentiating  the  126  and  127  cases.  The  distinction  between exit codes 126 and 127 is based on
       KornShell practice that uses 127 when all attempts to exec the utility fail with [ENOENT], and  uses  126
       when any attempt to exec the utility fails for any other reason.

EXAMPLES

       It  is frequently desirable to apply nohup to pipelines or lists of commands. This can be done by placing
       pipelines and command lists in a single file; this file can then be invoked as a utility, and  the  nohup
       applies to everything in the file.

       Alternatively, the following command can be used to apply nohup to a complex command:

              nohup sh -c 'complex-command-line'

RATIONALE

       The  4.3  BSD  version ignores SIGTERM and SIGHUP, and if ./nohup.out cannot be used, it fails instead of
       trying to use $HOME/nohup.out.

       The csh utility has a built-in version of nohup that acts differently from  the  nohup  defined  in  this
       volume of IEEE Std 1003.1-2001.

       The  term  utility  is  used,  rather  than  command, to highlight the fact that shell compound commands,
       pipelines, special built-ins, and so  on,  cannot  be  used  directly.  However,  utility  includes  user
       application programs and shell scripts, not just the standard utilities.

       Historical  versions  of the nohup utility use default file creation semantics. Some more recent versions
       use the permissions specified here as an added security precaution.

       Some historical implementations ignore SIGQUIT in addition to SIGHUP; others  ignore  SIGTERM.  An  early
       proposal  allowed,  but  did  not  require,  SIGQUIT to be ignored. Several reviewers objected that nohup
       should only modify the handling of SIGHUP as required by this volume of IEEE Std 1003.1-2001.

FUTURE DIRECTIONS

       None.

SEE ALSO

       Shell Command Language , sh , the System Interfaces volume of IEEE Std 1003.1-2001, signal()

COPYRIGHT

       Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1, 2003 Edition,
       Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open  Group  Base
       Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of Electrical and Electronics Engineers,
       Inc  and  The  Open Group. In the event of any discrepancy between this version and the original IEEE and
       The Open Group Standard, the original IEEE and The Open Group  Standard  is  the  referee  document.  The
       original Standard can be obtained online at http://www.opengroup.org/unix/online.html .

IEEE/The Open Group                                   2003                                              NOHUP(P)