We have already used pipes in many earlier sections. It is a tool for inter-process communication:

    $ command_1 | command_2

In this case, the output of command_1 will be sent as an input to command_2. The limitation is that the communication is half duplex. This means the data can flow in only one direction. Normally, for inter-process communication, you need to open files and then get the file descriptor. This will be used to write to the pipe file. Again, we need to create a Fifo file with special commands. The preceding technique simplifies this process. We only need to insert | in between the two processes. The operating system creates one intermediate buffer. This buffer is used for storing the data from one command and will be ...

Get Learning Linux Shell Scripting - Second Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.