Pipes

From Linux Shell Scripting Tutorial - A Beginner's handbook
Jump to: navigation, search
← Putting jobs in backgroundHomeHow to use pipes to connect programs →

A shell pipe is a way to connect the output of one program to the input of another program without any temporary file.

Syntax

command1 | command2
command1 | command2 | commandN
command1 arg1 | command2 arg1 arg2
get_data_command | verify_data_command | process_data_command | format_data_command > output.data.file
get_data_command < input.data.file | verify_data_command | process_data_command | format_data_command > output.data.file
  • You can connect two or more commands at a time.
  • The data path which joins two programs is called a pipe.
  • The vertical bar (|) is the pipe symbol.
  • A shell pipe supports Unix philosophy of chaining programs thorougher to complete complex task.
  • Redirection in pipes is also allowed.
  • The data path only works in one direction:
The output of one command is stored and then passed as the input for second command
← Putting jobs in backgroundHomeHow to use pipes to connect programs →