A pipeline
is a sequence of simple commands separated by
`|'.
[time
[-p
]] [!
] command1 [|
command2 ...]
The output of each command in the pipeline is connected to the input of the next command. That is, each command reads the previous command's output.
The reserved word time
causes timing statistics
to be printed for the pipeline once it finishes.
The statistics currently consist of elapsed (wall-clock) time and
user and system time consumed by the command's execution.
The `-p' option changes the output format to that specified
by POSIX.
The TIMEFORMAT
variable may be set to a format string that
specifies how the timing information should be displayed.
See section Bash Variables, for a description of the available formats.
The use of time
as a reserved word permits the timing of
shell builtins, shell functions, and pipelines. An external
time
command cannot time these easily.
If the pipeline is not executed asynchronously (see section Lists of Commands), the shell waits for all commands in the pipeline to complete.
Each command in a pipeline is executed in its own subshell (see section Command Execution Environment). The exit status of a pipeline is the exit status of the last command in the pipeline. If the reserved word `!' precedes the pipeline, the exit status is the logical negation of the exit status of the last command.
Go to the first, previous, next, last section, table of contents.