# The wait builtin command ## Synopsis wait [-f] [-n] [-p VARNAME] [ID...] ## Description The `wait` builtin command is used to wait for job completion and return exit status. - if `ID` is a job specification, it waits for all processes in the pipeline of this job - waits for a specific job (asynchronous command) and report its exit status if one or more `ID` is given - waits for all running jobs (asynchronous commands) - waits for \"the next\" job (`-n` option) - waits for termination instead of status change (`-f` option) `ID` may be an operating system process identifier or a shell job specification. ### Options Option Description -------------- --------------------------------------------------------------------------------------------------------------------------------- `-n` Waits for \"the next\" child to exit (as opposed to \"all children\" without this option). Accepts a list of IDs (jobs) `-f` Waits for the termination of the given `ID` (instead of waiting for a status change only) `-p VARNAME` When waiting for a list (-n) or all jobs, writes the job ID to the job that was actually terminated into the variable `VARNAME` ### Return status The return status is the return status of the job waited for, or Status Reason -------- ------------------------------------------------- 0 waited for all jobs in shell's job list 1 the given `ID` is not a valid job or process ID ## Examples ## Portability considerations ## See also