A pipe is the operating system’s way to connect the output from one program to the
input of another without the need for temporary or intermediate files. A pipe is a spe-
cial type of file connecting two programs; information written to it by one program
may be read immediately by the other, with synchronization, scheduling, and buffer-
ing handled automatically by the system. In other words, the programs are executing
concurrently, not one after the other. By using a pipe, indicated by the vertical symbol
(|), the last example can be rewritten as: