Member Sign In
Not a member?

A Wired.com user account lets you create, edit and comment on Webmonkey articles. You will also be able to contribute to the Wired How-To Wiki and comment on news stories at Wired.com.


It's fast and free.

Webmonkey is a property of Wired Digital.
processing...
Join Webmonkey

Please send me occasional e-mail updates about new features and special offers from Wired/Webmonkey.
Yes No

Please send occasional e-mail offers from Wired/Webmonkey affiliated web sites and publications, and carefully selected companies.
Yes No

I understand and agree that registration on or use of this site constitutes agreement to Webmonkey's User Agreement and Privacy Policy.
Webmonkey is a property of Wired Digital.
processing...

Retrieve Sign In

Please enter your e-mail address or username below. Your username and password will be sent to the e-mail address you provided us.

or
Webmonkey is a property of Wired Digital.
processing...

Welcome to Webmonkey

A private profile page has been created for you.
As a member of Webmonkey, you can now:
  • edit articles
  • add to the code library
  • design and write a tutorial
  • comment on any Webmonkey article
Close
Webmonkey is a property of Wired Digital.

Sign In Information Sent

An e-mail has been sent to the e-mail address registered in this account.
If you cannot find it in your in-box, please check your bulk or junk folders.
Sign In
Webmonkey is a property of Wired Digital.

Grep

/skill level/
/viewed/
0 Times

The grep command searches a file or files for lines that match a provided regular expression ("grep" comes from a command meaning to globally search for a regular expression and then print the found matches).

Structure:grep [options] regular expression [files]

To exit this command, type 0 if lines have matched, 1 if no lines match, and 2 for errors. This is very useful if you need to match things in several files. If you wanted to find out which files in our eighties directory contained the word "totally," you could use grep to search the directory and match those files with that word. At the command line you would type:

grep 'totally' /eighties/*

The * used in this example is called a meta-character, and it represents matching zero or more of the preceding characters. In this example, it is used to mean "all files and directories in this directory." So, grep will go into all the files and directories in eighties and tell you which files contain "totally." Our output will look like this:

grep: /eighties/john_hughes:Is a directory /eighties/legwarmers.html 

This is telling us that john_hughes is a directory within eighties/ and grep will not search in those files for the phrase, but that legwarmers.html does contain the phrase "totally."

See the find command for information about using grep in conjunction with find to do recursive operations.

Back to Unix Guide

  • This page was last modified 00:56, 16 May 2008.
Edit this article
Reddit Digg
 
Subscribe now

Special Offer For Webmonkey Users

WIRED magazine:
The first word on how technology is changing our world.

Subscribe for just $10 a year