# Plumbing

Plumbing: Pipes: |, Three Streams: Output, Errors and Input.

Updated: November 10, 2026

1. [Pipes: |](https://www.ask-codey.com/lessons/bash-pipes) (Apprentice): The pipe, |, hands everything one command prints to the next command as its input, so small commands that each do one job join into a pipeline that answers a question none of them can answer alone.
2. [Three Streams: Output, Errors and Input](https://www.ask-codey.com/lessons/bash-streams-and-redirection) (Apprentice): Every command has three streams, output, errors and input, and redirection sends each where you choose, with 2> for errors, &> or > file 2>&1 for both together, /dev/null to throw them away and &lt; to read a file in.

Source: https://www.ask-codey.com/courses/bash-in-depth/topics/bash-plumbing
