No, we're not going to start talking about plumbing here. In Linux, ``pipes'' connect the standard output of one command to the standard input of another command.
Let's take a step back, to the ls command. There are plenty of options available with ls, but what if the contents of a directory stream by too quickly for you to view them?
Let's view the contents of the /etc directory.
ls -al /etc
How do we take a closer look at the output before it races off the screen?
We use the vertical bar (|) to pipe the commands (as shown in Figure 34).
ls -al /etc | less
Now we can view the contents one screen at a time. To move forward a screen, just press [Space]; to move back a screen, press [B]; to quit, just press [Q].
Actually, we've already been using pipes, before we even discussed what they were.
In previous references to man pages, we used the following to print out the man page entry:
man ls | col -b | lpr
Here, we're sending the output of man ls to a filter called col with an option of -b to help format the text for the printer, then we sent the output of that to the printer using the lpr command.
Summary: Piping allows you to send the output of one command as the input of another command. For example: ls -al /etc | more pipes the output of the ls command to the more utility for easy viewing.