--- layout: page author: Domenico Votta category-page: advanced category-title: Advanced commands tags: pipes redirect output input title: Pipes --- The pipes that in the shell are representend with the symbol | , they are used to join two commands on the terminal, taking the output of the first command and using it as input of the second.
It is usually common to see the command grep and ps together, an example below.
Example: lists all processes with your username
ps aux | grep user
Example: count the lines of a file, using the nl command
cat example1.txt | nl
    1  Car
    2  Computer
    3  Robot
    4  Smartphone
    5  Videogame
Example: passing expressions to bc to do calculations
echo "(12 / 2 - 3) * 3 + 1.5" | bc
    10.5
You can use the commands that you learned and put them together, always respecting the logic of the command.