Wait

From Wikipedia, the free encyclopedia

For the British town pipers, see Wait (musician). For the Beatles song, see Wait (song).
The correct title of this article is wait. The initial letter is shown capitalized due to technical restrictions.

In computing wait is a command which pauses until execution of a background process has ended.

[edit] Usage

wait [n]

Where n is the pid or job number of a currently executing background process (job). If n is not given, the command waits until all jobs known to the invoking shell have terminated.

wait normally returns the exit code 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.

[edit] Example

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 (somewhat contrived) 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.

#!/bin/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, unless rsync failed
wait && make

[edit] External links