nohup(1) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

nohup(1)

nohup(1)                         User Commands                        nohup(1)

NAME
       nohup - run a command immune to hangups

SYNOPSIS
       /usr/bin/nohup command [argument]...


       /usr/bin/nohup -p [-Fa] pid [pid]...


       /usr/bin/nohup -g [-Fa] gpid [gpid]...


       /usr/xpg4/bin/nohup command [argument]...

DESCRIPTION
       The  nohup  utility  invokes  the named command with the arguments sup‐
       plied. When the command is invoked, nohup arranges for the SIGHUP  sig‐
       nal to be ignored by the process.


       When  invoked with the -p or -g flags, nohup arranges for processes al‐
       ready running as identified by a list of  process  IDs  or  a  list  of
       process group IDs to become immune to hangups.


       The  nohup  utility  can  be used when it is known that command takes a
       long time to run and the user wants to log out of the terminal. When  a
       shell exits, the system sends its children SIGHUP signals, which by de‐
       fault  cause  them  to  be killed. All stopped, running, and background
       jobs ignore SIGHUP and continue running, if their  invocation  is  pre‐
       ceded  by the nohup command or if the process programmatically has cho‐
       sen to ignore SIGHUP.


       The  nohup  utility  causes  processes  to  ignore  SIGHUP   (and   for
       /usr/bin/nohup,  SIGQUIT)  but  does  not  in  any  way  protect  those
       processes from other signals. Since modern shells sometimes  send  sig‐
       nals other than SIGHUP upon logout, it is possible for jobs running un‐
       der nohup to be killed when the controlling shell exits.

       /usr/bin/nohup

           Processes  run  by /usr/bin/nohup are immune to SIGHUP (hangup) and
           SIGQUIT (quit) signals.


       /usr/bin/nohup -p [-Fa]

           Processes specified by ID are made immune to  SIGHUP  and  SIGQUIT,
           and  all  output  to  the controlling terminal is redirected to no‐
           hup.out. If -F is specified, nohup forces control of each  process.
           If  -a is specified, nohup changes the signal disposition of SIGHUP
           and SIGQUIT even if the process has installed a handler for  either
           signal.


       /usr/bin/nohup -g [-Fa]

           Every  process in the same process group as the processes specified
           by ID are made immune to SIGHUP and SIGQUIT, and all output to  the
           controlling  terminal  is  redirected to nohup.out. If -F is speci‐
           fied, nohup forces control of each process. If -a is specified, no‐
           hup changes the signal disposition of SIGHUP and  SIGQUIT  even  if
           the process has installed a handler for either signal.


       /usr/xpg4/bin/nohup

           Processes run by /usr/xpg4/bin/nohup are immune to SIGHUP.

           The  nohup  utility  does not arrange to make processes immune to a
           SIGQUIT (quit) signal, so unless  they  arrange  to  be  immune  to
           SIGQUIT  or the shell makes them immune to SIGQUIT (such as via the
           trap(1) shell built-in command), they receive it.

           If nohup.out is not writable in the current  directory,  output  is
           redirected  to  $HOME/nohup.out. If a file is created, the file has
           read and write permission (600. See chmod(1). If the standard error
           is a terminal, it is redirected to the standard  output,  otherwise
           it  is  not redirected. The priority of the process run by nohup is
           not altered.


OPTIONS
       The following options are supported:

       -a    Always changes the signal disposition of target  processes.  This
             option is valid only when specified with -p or -g.


       -F    Force.  Grabs  the  target  processes even if another process has
             control. This option is valid only when specified with -p or -g.


       -g    Operates on a list of process groups. This option  is  not  valid
             with -p.


       -p    Operates  on  a  list of processes. This option is not valid with
             -g.


OPERANDS
       The following operands are supported:

       pid         A decimal process ID to be manipulated by nohup  -p.


       pgid        A decimal process group ID to be manipulated by nohup  -g.


       command     The name of a command that is to be invoked. If the command
                   operand names any of the special  shell_builtins(1)  utili‐
                   ties, the results are undefined.


       argument    Any  string to be supplied as an argument when invoking the
                   command operand.


USAGE
       Caution should be exercised when using the -F flag. Imposing  two  con‐
       trolling  processes  on one victim process can lead to chaos. Safety is
       assured only if the primary controlling process, typically a  debugger,
       has  stopped  the victim process and the primary controlling process is
       doing nothing at the moment of application of the proc  tool  in  ques‐
       tion.

EXAMPLES
       Example 1 Applying nohup to Pipelines or Command Lists



       It is frequently desirable to apply nohup to pipelines or lists of com‐
       mands.  This can be done only by placing pipelines and command lists in
       a single file, called a shell script. One can then issue:


         example$ nohup sh file




       and the nohup applies to everything in file. If the shell  script  file
       is  to be executed often, then the need to type sh can be eliminated by
       giving file execute permission.



       Add an ampersand and the contents of file are  run  in  the  background
       with interrupts also ignored (see sh(1)):


         example$ nohup file &


       Example 2 Applying nohup -p to a Process


         example$ long_running_command &
         example$ nohup -p `pgrep long_running_command`


       Example 3 Applying nohup -g to a Process Group


         example$ make &
         example$ ps -o sid -p $$
           SID
         81079
         example$ nohup -g `pgrep -s 81079 make`


ENVIRONMENT VARIABLES
       See  environ(7) for descriptions of the following environment variables
       that affect the execution of nohup:  LANG,  LC_ALL,  LC_CTYPE,  LC_MES‐
       SAGES, NLSPATH, and PATH.

       HOME    Determine  the  path  name of the user's home directory: if the
               output file nohup.out cannot be created in the  current  direc‐
               tory,  the  nohup  command  uses the directory named by HOME to
               create the file.


EXIT STATUS
       The following exit values are returned:

       126    command was found but could not be invoked.


       127    An error occurred in nohup, or command could not be found



       Otherwise, the exit values of nohup are those of the command operand.

FILES
       nohup.out          The output file of the nohup execution  if  standard
                          output is a terminal and if the current directory is
                          writable.


       $HOME/nohup.out    The  output  file of the nohup execution if standard
                          output is a terminal and if the current directory is
                          not writable.


ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:

   /usr/bin/nohup
       tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE  TYPEAT‐
       TRIBUTE VALUE _ Availabilitysystem/core-os _ CSIEnabled


   /usr/xpg4/bin/nohup
       tab()  box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
       TRIBUTE VALUE _ Availabilitysystem/xopen/xcu4 _ CSIEnabled _  Interface
       StabilityCommitted _ StandardSee standards(7).


SEE ALSO
       bash(1),  batch(1),  chmod(1),  csh(1),  disown(1),  ksh88(1), nice(1),
       pgrep(1),  proc(1),  ps(1),   setpgrp(1),   sh(1),   shell_builtins(1),
       trap(1), signal(3C), proc(5), attributes(7), environ(7), standards(7)

WARNINGS
       If  you  are running the Korn shell (ksh88(1)) as your login shell, and
       have nohup'ed jobs running when you attempt to log out, you are  warned
       with the message:

         You have jobs running.



       You  need  to  log out a second time to actually log out. However, your
       background jobs continues to run.

NOTES
       The C-shell (csh(1)) has a built-in command nohup that  provides  immu‐
       nity  from  SIGHUP, but does not redirect output to nohup.out. Commands
       executed with '&' are automatically immune to HUP signals while in  the
       background.


       nohup  does not recognize command sequences. In the case of the follow‐
       ing command,

         example$ nohup command1; command2



       the nohup utility applies only to command1. The command,

         example$ nohup (command1; command2)



       is syntactically incorrect.

HISTORY
       The -a, -F, -g, and -p options were added to /usr/bin/nohup in the  So‐
       laris 9 release.


       The /usr/xpg4/bin/nohup command was added in the Solaris 2.5 release.


       The  /usr/bin/nohup command has been included in all Sun and Oracle re‐
       leases of Solaris.

Oracle Solaris 11.4               29 Nov 2022                         nohup(1)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3