A temporary software connection between two programs or commands. Normally, the operating system accepts input from the keyboard and sends output to the display screen. Sometimes, however, it is useful to use the output from one command as the input for a second command, without passing the data through the keyboard or display screen. Pipes were invented for these situations.
One of the best examples of pipe usage is linking the command that lists files in a directory to a command that sorts data. By piping the two commands together, you can display the files in sorted order