Pipes Feature in Unix Shell : How to send and get data between ANYTHING

Pipes is probably one of the most important and useful features features that is available in the Unix shell. This feature is simply astonishing, specially to people who are not familiar to the concept of pipes are totally surprised when they see it work. Without further delay, lets get to the core issue. Using pipes can save you time and headachs.

Explanation :

Pipes as the name suggests is a sort of hollow tube (a pipe) where you can put data into one end and get it out of the other end. Whats the use? You will see soon.. Using pipes you can connect two programs. Using pipes you can make the output of a particular command to act as the input for another command.

This is best explained using an example:

$ ls | grep ‘mp3′

This command basically consists of 2 commands joined by a pipe. The first command gets the listing of the current directory and then pipes it to (sends it to) the second command which is a grep command. The grep command selects those lines from the directory listing (which it received from the ls command) having the string ‘mp3′ in them. So basically as a result of this command you would get a list of files / directories that have the letters ‘mp3′ in their names.
You might think this is not really useful, when you could have used some form of ls command itself (probably shorter) to get the some work done. The use of pipes becomes evident as you design more complex commands.

Take the following command. This one too is simple, but you would get the idea behind pipes.

$ ls | grep ‘mp3′ | sort -r
This command would do the same as the above one, but this time instead of displaying all the files/directories having the string ‘mp3′ in their names, this result is passed on to the sort command through a pipe. The sort command with the -r option sorts this result in the reverse order. And then finally displays the result.

Thus as you can see, pipes let you pass the output of one command to the input of another command. You can carry on this chain as long as you want (you can use pipes between 5,6,7..commands..how many ever you want) ..and you can get extremely customized outputs. The capabilities of Unix shell when pipes are used effectively is left to your imagination.

In A Nutshell :

Pipes can be used with almost any Unix commands. But the concept remains the same – the output of your first command acts as the input to the second command, but don’t think pipes is limited to just 2 commands, you can technically pipe input/output to an unlimited number of commands. You should take care to check that the output of the first command is acceptable input to the second command. It should not be that the first command has its output in some format other than text format and the second command works with only text input. If at all this sort of thing happens, you would mostly get an error message or you would have to type ctlr + C to quit the execution of the command and come back to the prompt.
Always remember that if you screw up inputting our outputting data and you need to cancel you can always hit ctlr + C.  The same goes with if you have too much data and you want to start over; hit ctlr + c, then you can hit your up arrow key to bring up the command you just tried to run to refine it to better suit what you were trying to do.

Read More Post

STAY CONNECTED

Most Popular

Why Serviced Apartments Are the Perfect Choice for Long-Term Stays in Singapore – Everything You Need to Know
17 Dec

Why Serviced Apartments Are the Perfect Choice for Long-Term Stays in Singapore – Everything You Need to Know

If you’re heading to Singapore for a few weeks or many months, maybe for work or study or just to

Manifesting Your Dream Career: Finding Your Passion And Purpose
01 Aug

Manifesting Your Dream Career: Finding Your Passion And Purpose

Are you passionate about finding your dream career? Manifesting can help you align your career with your passions and purpose.

Revolutionizing Your Ride: Expert Auto Service At Carolina Auto Service
27 Feb

Revolutionizing Your Ride: Expert Auto Service At Carolina Auto Service

Finding a reliable auto service provider is paramount in the bustling world of vehicle maintenance and repair. That's where Carolina

Floratam: The Robust Grass Solution From Council Growers SOD
25 Jan

Floratam: The Robust Grass Solution From Council Growers SOD

Floratam grass, a popular St. Augustine variety, has become a go-to choice for homeowners and landscapers seeking a lush, durable

Carolina Mobile Autoservice: Your Go-To For Expert Brake Service Repair
25 Jan

Carolina Mobile Autoservice: Your Go-To For Expert Brake Service Repair

For vehicle owners, the braking system is among the most critical components for safety and performance. Carolina Mobile Autoservice, a

Safeguarding Your Property: Expert Water Damage Services By MBC Capital
24 Jan

Safeguarding Your Property: Expert Water Damage Services By MBC Capital

Water damage can significantly impact homes and businesses, often leaving a trail of destruction and disruption in its wake. Understanding