Skip to main content

By clicking Submit, you agree to the developerWorks terms of use.

The first time you sign into developerWorks, a profile is created for you. Select information in your developerWorks profile is displayed to the public, but you may edit the information at any time. Your first name, last name (unless you choose to hide them), and display name will accompany the content that you post.

All information submitted is secure.

  • Close [x]

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerworks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

By clicking Submit, you agree to the developerWorks terms of use.

All information submitted is secure.

  • Close [x]

UNIX tips and tricks for a new user, Part 3: Introducing filters and regular expressions

Using grep, sed, and awk

Tim McIntire, Consultant, Freelance Writer
Photo of Tim McIntire
Tim McIntire works as a consultant and co-founder of Cluster Corporation, a market leader in HPCC software, support, and consulting. He also contributes periodically to IBM developerWorks and Apple Developer Connection. Tim's research, conducted while leading the computer science effort at Scripps Institution of Oceanography's Digital Image Analysis Lab, has been published in a variety of journals, including Concurrency and Computation and IEEE Transactions on Geoscience and Remote Sensing. You can visit TimMcIntire.net to learn more.

Summary:  Discover the power of UNIX® filters. In this tutorial, you'll learn about the grep family in depth, including the syntax of regular expressions in many UNIX utilities. You'll also find out more about the stream editor, sed, as well as examine the awk pattern scanning language through examples and explanations.

View more content in this series

Date:  12 May 2006
Level:  Intermediate PDF:  A4 and Letter (70 KB | 20 pages)Get Adobe® Reader®

Activity:  54665 views
Comments:  

Before you start

Learn what to expect from this tutorial and how to get the most out of it.

About this series

This four-part tutorial series covers UNIX® from the ground up. The initial tutorial was a good brush-up for users who've been away from UNIX-like operating systems for some time. It's also useful for brand-new UNIX users coming from a Windows® background, because it uses references and comparisons to Windows. The second tutorial focused on the vi text editor, one of the most powerful (and mysterious) UNIX utilities available. This tutorial teaches you about the UNIX command-line filters that use regular expressions, including grep, sed, and awk.

About this tutorial

Unlocking the power behind UNIX command-line filters, such as grep, sed, and awk, requires a solid understanding of regular expressions. This tutorial teaches new users what each of these utilities is capable of and how to use regular expressions to manipulate text. You'll start by using simple, playful examples with grep and progress to real-world examples of sed and awk.

Objectives

The objective of this tutorial is to make UNIX and Linux® users comfortable with three powerful command-line tools that can be used to search for and alter data quickly and efficiently. The beginning of the tutorial explains regular expressions that are used in the basic framework of many UNIX utilities (and programming languages). The following sections give examples of using regular expressions with grep, sed, and awk.

Prerequisites

You need a basic understanding of the command line for this tutorial. For some parts of this tutorial, a working understanding of how input and output is handled in UNIX with stdin, stdout, and pipe is also helpful.

System requirements

Access to a user account on any computer running any UNIX-like operating system is all you need to complete this tutorial. UNIX-like operating systems include the IBM AIX® operating system, Linux, Berkeley Software Distribution (BSD), Mac OS® X (using Terminal to access the command line), and many others.

1 of 8 | Next

Comments



Help: Update or add to My dW interests

What's this?

This little timesaver lets you update your My developerWorks profile with just one click! The general subject of this content (AIX and UNIX, Information Management, Lotus, Rational, Tivoli, WebSphere, Java, Linux, Open source, SOA and Web services, Web development, or XML) will be added to the interests section of your profile, if it's not there already. You only need to be logged in to My developerWorks.

And what's the point of adding your interests to your profile? That's how you find other users with the same interests as yours, and see what they're reading and contributing to the community. Your interests also help us recommend relevant developerWorks content to you.

View your My developerWorks profile

Return from help

Help: Remove from My dW interests

What's this?

Removing this interest does not alter your profile, but rather removes this piece of content from a list of all content for which you've indicated interest. In a future enhancement to My developerWorks, you'll be able to see a record of that content.

View your My developerWorks profile

Return from help

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=AIX and UNIX, Linux
ArticleID=181829
TutorialTitle=UNIX tips and tricks for a new user, Part 3: Introducing filters and regular expressions
publish-date=05122006
author1-email=tm@timmcintire.net
author1-email-cc=

Tags

Help
Use the search field to find all types of content in My developerWorks with that tag.

Use the slider bar to see more or fewer tags.

Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere).

My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Use the search field to find all types of content in My developerWorks with that tag. Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere). My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Try IBM PureSystems. No charge.