0% found this document useful (0 votes)
95 views

What Is A Pipe in Linux?

The document discusses Linux pipes and filters. Pipes allow the output of one command to serve as input to another. Common commands discussed include grep, which finds strings in files, sort, which alphabetizes file content, and less/pg/more, which paginate long files. Filters take input from one command, process it, and output the result, enabling powerful multi-step operations by chaining commands with pipes.

Uploaded by

C.RadhiyaDevi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
95 views

What Is A Pipe in Linux?

The document discusses Linux pipes and filters. Pipes allow the output of one command to serve as input to another. Common commands discussed include grep, which finds strings in files, sort, which alphabetizes file content, and less/pg/more, which paginate long files. Filters take input from one command, process it, and output the result, enabling powerful multi-step operations by chaining commands with pipes.

Uploaded by

C.RadhiyaDevi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

 What is a Pipe in Linux?

 'pg' and 'more' commands


 The 'grep' command)
 The 'sort' command
 What is a Filter?

What is a Pipe in Linux?


The Pipe is a command in Linux that lets you use two or more commands such that output of one
command serves as input to the next. In short, the output of each process directly as input to the
next one like a pipeline. The symbol '|' denotes a pipe.

Pipes help you mash-up two or more commands at the same time and run them consecutively.
You can use powerful commands which can perform complex tasks in a jiffy.

Let us understand this with an example.

When you use 'cat' command to view a file which spans multiple pages, the prompt quickly
jumps to the last page of the file, and you do not see the content in the middle.

To avoid this, you can pipe the output of the 'cat' command to 'less' which will show you only
one scroll length of content at a time.

cat filename | less

An illustration would make it clear.

Please be patient. The Video will load in some time. If you still face issue viewing video click
here

'pg' and 'more' commands


Instead of 'less', you can also use.

cat Filename | pg

or

cat Filename | more

And, you can view the file in digestible bits and scroll down by simply hitting the enter key.
The 'grep' command
Suppose you want to search a particular information the postal code from a text file.

You may manually skim the content yourself to trace the information. A better option is to use
the grep command. It will scan the document for the desired information and present the result in
a format you want.

Syntax:

grep search_string

Let's see it in action -

Here, grep command has searched the file 'sample', for the string 'Apple' and 'Eat'.

Following options can be used with this command.

Option Function
-v Shows all the lines that do not match the searched string
-c Displays only the count of matching lines
-n Shows the matching line and its number
-i Match both (upper and lower) case
-l Shows just the name of the file with the string

Let us try the first option '-i' on the same file use above -

Using the 'i' option grep has filtered the string 'a' (case-insensitive) from the all the lines.

The 'sort' command


This command helps in sorting out the contents of a file alphabetically.

The syntax for this command is:

sort Filename
Consider the contents of a file.

Using the sort command

There are extensions to this command as well, and they are listed below.

Option Function
-r Reverses sorting
-n Sorts numerically
-f Case insensitive sorting

The example below shows reverse sorting of the contents in file 'abc'.

What is a Filter?
Linux has a lot of filter commands like awk, grep, sed, spell, and wc. A filter takes input from
one command, does some processing, and gives output.

When you pipe two commands, the "filtered " output of the first command is given to the next.

Let's understand this with the help of an example.

We have the following file 'sample'

We want to highlight only the lines that do not contain the character 'a', but the result should be
in reverse order.

For this, the following syntax can be used.

cat sample | grep -v a | sort - r


Let us look at the result.

Summary:

 Pipes '|' send the output of one command as input of another command.
 The Filter takes input from one command, does some processing, and gives output.
 The grep command can be used to find strings and values in a text document
 Piping through grep has to be one of the most common uses
 'sort' command sorts out the content of a file alphabetically
 less ,pg and more commands are used for dividing a long file into readable bits

You might also like