Piping

In Unix, by default, a command usually prints its results in the terminal. Users can choose to (instead) take the output from one command and use this output as the input to another command. Then a user can take the output from the second command and use that output as input to a third command. Doing this repeatedly, a user has the ability to string together a sequence of commands into a pipeline. Pipelines can accomplish a great deal of work with just one line of typing. See section 1.5 of Unix Power Tools for a high-level overview of pipes and pipelines.

Once a user learns some of the many Unix tools available, it is possible to use many of the tools in tandem (together, in a sequence, called a pipeline). A pipeline of tools allows a user to accomplish more than can be accomplished with functions selected from a menu. Pipelines also allow more functionality than any individual built-in tool. (As an analogy, individual tools might be a hammer, screwdriver, saw, drill, etc., which each have individual, specialized purposes. When these tools are used together, however, they allow a person to build an entire house.)

Additionally, to use commands in Unix, it is not necessary to have a background in programming. Instead, users can just learn a handful of Unix commands and can practice using them in pipelines. A typical user can quickly learn to accomplish a great deal of data analysis with just one line of typing in a shell.