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

개요

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

wait(1)

wait(1)                          User Commands                         wait(1)

NAME
       wait - await process completion

SYNOPSIS
       /usr/bin/wait [pid]...

   /usr/sunos/bin/sh
       wait [pid]...

   /bin/jsh, /bin/ksh88, /usr/xpg4/bin/sh
       wait [pid]...


       wait [%jobid]...

   /bin/csh
       wait

   ksh
       wait [job]...

DESCRIPTION
       The  wait  command is used to block until the specified processes exit.
       Although provided as a standalone utility, shells  typically  implement
       the wait functionality internally as a built-in, rather than creating a
       new process.


       If you get the error message cannot fork, too many processes, try using
       the wait command to clean up your background processes. If this doesn't
       help,  the  system  process table is probably full or you have too many
       active foreground processes. There is a limit to the number of  process
       IDs  associated  with your login, and to the number the system can keep
       track of.


       Not all the processes of a pipeline with three or more stages are chil‐
       dren of the shell, and thus cannot be waited for.

   /usr/sunos/bin/sh, /bin/jsh
       Wait for your background process whose process ID is pid and report its
       termination status. If pid is omitted, all your shell's  currently  ac‐
       tive  background processes are waited for and the return code is 0. The
       wait utility accepts a job identifier,  when  Job  Control  is  enabled
       (jsh), and the argument, jobid, is preceded by a percent sign (%).


       If  pid  is  not an active process ID, the wait utility returns immedi‐
       ately and the return code is 0.

   csh
       Wait for your background processes.

   ksh88
       When an asynchronous list is started by the shell, the  process  ID  of
       the last command in each element of the asynchronous list becomes known
       in the current shell execution environment.


       If  the  wait  utility  is invoked with no operands, it waits until all
       process IDs known to the invoking shell have terminated and  exit  with
       an exit status of 0.


       If one or more pid or jobid operands are specified that represent known
       process  IDs (or jobids), the wait utility waits until all of them have
       terminated. If one or more pid or jobid  operands  are  specified  that
       represent  unknown process IDs (or jobids), wait treats them as if they
       were known process IDs (or jobids) that exited with  exit  status  127.
       The  exit status returned by the wait utility is the exit status of the
       process requested by the last pid or jobid operand.


       The known process IDs are applicable only for invocations  of  wait  in
       the current shell execution environment.

   ksh
       wait with no operands, waits until all jobs known to the invoking shell
       have  terminated. If one or more job operands are specified, wait waits
       until all of them have completed. Each job can be specified as  one  of
       the following:

       number      number refers to a process ID.


       -number     number refers to a process group ID.


       %number     number refers to a job number


       %string     Refers to a job whose name begins with string


       %?string    Refers to a job whose name contains string


       %+          Refers to the current job
       %%


       %-          Refers to the previous job



       If  one  or  more  job operands is a process id or process group id not
       known by the current shell environment, wait treats each of them as  if
       it were a process that exited with status 127.

OPERANDS
       The following operands are supported:

       pid      The  unsigned  decimal  integer  process  ID of a command, for
                which the utility is to wait for the termination.


       jobid    A job control job ID  that  identifies  a  background  process
                group to be waited for. The job control job ID notation is ap‐
                plicable only for invocations of wait in the current shell ex‐
                ecution  environment,  and  only on systems supporting the job
                control option.


USAGE
       On most implementations, wait is a shell built-in. If wait is called in
       a subshell, or separate utility execution environment, it returns imme‐
       diately because there is no known process IDs to wait for in those con‐
       texts. Examples include the following:

         (wait)
         nohup wait ...
         find . -exec wait ... \;
         /usr/bin/wait ...



       To wait for a process started outside of the  current  shell  execution
       environment, see pwait(1).

EXAMPLES
       Example 1 Using A Script To Identify The Termination Signal



       Although  the exact value used when a process is terminated by a signal
       is unspecified, if it is known that a signal terminated  a  process,  a
       script  can  still  reliably  figure out which signal is using kill, as
       shown by the following (/bin/ksh88 and /usr/xpg4/bin/sh):


         sleep 1000&
         pid=$!
         kill -kill $pid
         wait $pid
         echo $pid was terminated by a SIG$(kill -l $(($?−128))) signal.


       Example 2 Returning The Exit Status Of A Process



       If the following sequence of commands is run in less  than  31  seconds
       (/bin/ksh88 and /usr/xpg4/bin/sh):


         sleep 257 | sleep 31 &

         jobs -l %%




       then  either  of  the following commands returns the exit status of the
       second sleep in the pipeline:


         wait <pid of sleep 31>
         wait %%


ENVIRONMENT VARIABLES
       See environ(7) for descriptions of the following environment  variables
       that affect the execution of wait: LANG, LC_ALL, LC_CTYPE, LC_MESSAGES,
       and NLSPATH.

EXIT STATUS
   ksh
       The following exit values are returned by the wait built-in in ksh:

       0      wait  was  invoked  with no operands. All processes known by the
              invoking process have terminated.


       127    job is a process id or process group id that is unknown  to  the
              current shell environment.


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

   /usr/bin/wait
       tab()  box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) ATTRIBUTE TYPEAT‐
       TRIBUTE VALUE _ Availabilitysystem/core-os _ Interface StabilityCommit‐
       ted _ StandardSee standards(7).



       See the respective shell man pages for attributes of the shell built-in
       versions of wait.

SEE ALSO
       csh(1), jobs(1), ksh(1), ksh88(1), pwait(1), sh(1s), attributes(7), en‐
       viron(7), standards(7)

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