Reference articles on history, science, culture and more
Encyclopedia

Wait (command)

Command which pauses until execution of a background process has ended

In Unix shells, wait is a command which pauses until execution of a background process has ended.

01Usage

wait [n...]

where n... is a list of pids or job IDs of a currently executing background process (job). If no ids are provided, the command waits until all jobs known to the invoking shell have terminated.

wait normally returns the exit status of the last job which terminated. It may also return 127 in the event that n specifies a non-existent job or zero if there were no jobs to wait for.

Because wait needs to be aware of the job table of the current shell execution environment. Under the POSIX specifications it is required to be a shell builtin.

02Example

This command can be useful where part of a script can execute in parallel to implement a barrier where an upcoming section depends on the successful completion of the preceding sections.

The following example will fetch the src/ directory from a machine named iona using rsync and simultaneously update the libraries on which this program depends, before building the combination.

#!/usr/bin/env bash # Parallel update script which makes use of the wait command # Update local copy rsync iona:src/ . & # Upgrade required libraries, or exit indicating failure if make failed for some reason make -C lib || exit 1 # Wait for rsync to terminate (may have already happened) and finish the job wait make

Wait for specified job control id number:

$ ls -R / > /dev/null 2>&1 & # start any long running background process [2] 1986 $ wait %2 # waits for background job number 2 to terminate, then returns
Watch videos about Wait (command)Explainers and documentaries on YouTube (opens in a new tab)

Sources and credits

This article is adapted from the Wikipedia article Wait (command), written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.

Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.