Definition

awk

awk (also written as Awk and AWK) is a utility that enables a programmer to write tiny but effective programs in the form of statements that define text patterns that are to be searched for in each line of a document and the action that is to be taken when a match is found within a line. awk comes with most UNIX-based operating systems such as Linux, and also with some other operating systems, such as Windows 95/98/NT.

An awk program is made up of patterns and actions to be performed when a pattern match is found. awk scans input lines sequentially and examines each one to determine whether it contains a pattern matching one specified by the user. When the matching pattern is found, awk carries out the instructions in the program. For example, awk could scan text for a critical portion and reformat the text contained in it according to the user's command. If no pattern is specified, the program will carry out the command on all of the input data.

awk breaks each line into fields, which are groups of characters with spaces acting as separators so that a word, for example, would be a field. A string is encased in backslashes and actions to be performed are encased in curly brackets. The lines are numbered in order of their appearance, with "0" refering to the entire line. "$" is the symbol for field. So, for example, to search for a line containing the word "nutmeg," and to print each line in which the word occurs, the awk program would consist of:

/nutmeg/ { print $0 }.

The name "awk" is derived from the names of its three developers: Alfred Aho, Peter Weinberger, and Brian Kernighan. It was developed from grep, C, and sed syntax, a combination that allows complex programs to be developed quickly. awk is frequently used for prototyping. Versions of awk include Portable Operating System Interface awk, New awk (Nawk) and GNU awk (Gawk). The Practical Extraction and Reporting Language language was developed as an improved version of awk, with which Perl is backward compatible. (als

This was last updated in April 2005
Posted by: Margaret Rouse

Email Alerts

Register now to receive SearchSOA.com-related news, tips and more, delivered to your inbox.
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

More News and Tutorials

  • Q&A: Messaging middleware with Apache projects

    In this Q&A, Rob Davies discusses messaging middleware and the hurdles that many developers face as they first approach the subject. Davis is CTO of FuseSource and coauthor of the book "ActiveMQ in Action."

  • SOA, semantics and services combine in DoD intelligence sharing effort

    Using textual analytics and natural language processing, Modus Operandi developed a service that analyzes and parses unstructured data and pulls out events or information. Article includes tips on SOA and semantics, SOA and data models, and an SOA recipe for stone soup.Among highlights: Recognize that not everything can be or should be shared.

  • An SOA practices checklist for implementation roadmaps

    This article provides a master list of common practices, field proven by a number of SOA projects. Also supplied is a template that can be used as a checklist for developing SOA implementation roadmaps specific to an organization's transition project requirements.

Do you have something to add to this definition? Let us know.

Send your comments to techterms@whatis.com

There are Comments. Add yours.

 
TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to: