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 .