[comp.unix.questions] Expansion of the acronym "grep"

romwa@gpu.utcs.utoronto.ca (Royal Ontario Museum) (06/05/89)

In article <25249@agate.BERKELEY.EDU> glass@mica.berkeley.edu () writes:
>What is the correct expansion of the acronym "grep"? I'm told that this
>has come up in comp.unix.questions before, but the relevant articles are
>no longer on my news server. I'd also be interested in knowing what the
>acronyms for the other flavors of grep (e.g. egrp) expand to.

grep < global regular expression

Mark T. Dornfeld
Royal Ontario Museum
100 Queens Park
Toronto, Ontario, CANADA
M5S 2C6

mark@utgpu!rom      - or -     romwa@utgpu

glass@mica.berkeley.edu (06/05/89)

What is the correct expansion of the acronym "grep"? I'm told that this
has come up in comp.unix.questions before, but the relevant articles are
no longer on my news server. I'd also be interested in knowing what the
acronyms for the other flavors of grep (e.g. egrp) expand to.

--Brett

============================================================================
"One of the nicest things about mathematics, or anything else you might
 care to learn, is that many of the things which can never be, often are."
                                      Norton Juster, "The Phantom Tollbooth"
============================================================================

tim@crackle.amd.com (Tim Olson) (06/05/89)

In article <1989Jun4.185134.13185@gpu.utcs.utoronto.ca> romwa@gpu.utcs.UUCP (Royal Ontario Museum) writes:
| grep < global regular expression

Almost.

"grep" comes from a (once) commonly-used ed command:

	g/RE/p

which meant to globally search for a Regular Expression and print each
occurance.  As for the other "greps", there is:

	fgrep - "fixed-string grep": grep optimized for fixed strings
		instead of regular expressions. 

	egrep - "extended grep": grep with full regular expression
		parsing instead of just the REs allowed in ed.

	-- Tim Olson
	Advanced Micro Devices
	(tim@amd.com)

badri@valhalla.ee.rochester.edu (Badri Lokanathan) (06/05/89)

>In article <1989Jun4.185134.13185@gpu.utcs.utoronto.ca>,
romwa@gpu.utcs.UUCP (Royal Ontario Museum) writes:
>| grep < global regular expression
>
In article <25849@amdcad.AMD.COM> tim@amd.com (Tim Olson) writes:
>"grep" comes from a (once) commonly-used ed command:
>
>	g/RE/p
>

I like to call it "Global REcognize Pattern" for novices, since it is
kind of difficult to explain the notion of a regular expression.
-- 
"We will fight for the right to be free {) badri@ee.rochester.edu
 We will build our own society         //\\ {ames,cmcl2,columbia,cornell,
 And we will sing, we will sing       ///\\\ garp,harvard,ll-xn,rutgers}!
 We will sing our own song."  -UB40    _||_   rochester!ur-valhalla!badri

benji@hpfcdq.HP.COM (Jeff Benjamin) (06/06/89)

> What is the correct expansion of the acronym "grep"? I'm told that this
> has come up in comp.unix.questions before, but the relevant articles are
> no longer on my news server. I'd also be interested in knowing what the
> acronyms for the other flavors of grep (e.g. egrp) expand to.

I have heard that "grep" stands for "general regular expression parser."
"Egrep," then, might be "extended grep", and "fgrep" might be "fast
grep."  Note that if this is the correct acronym for fgrep, it is a
misnomer, since fgrep doesn't do regular expressions -- only strings.

-----
Jeff Benjamin                         {ucbvax,hplabs}!hpfcla!benji
Graphics Technology Division          benji%hpfcla@hplabs.HP.COM
Hewlett Packard Co.                   Fort Collins, Colorado	

phile@lgnp1.LS.COM (Phil Eschallier) (06/06/89)

In article <1989Jun4.185134.13185@gpu.utcs.utoronto.ca>, romwa@gpu.utcs.utoronto.ca (Royal Ontario Museum) writes:
> In article <25249@agate.BERKELEY.EDU> glass@mica.berkeley.edu () writes:
> >What is the correct expansion of the acronym "grep"? I'm told that this
> >has come up in comp.unix.questions before, but the relevant articles are
> >no longer on my news server. I'd also be interested in knowing what the
> >acronyms for the other flavors of grep (e.g. egrp) expand to.
> 
> grep < global regular expression
> 

	actually --
	grep  ==> global regular expression parser
	fgrep ==> fixed-string global regular expression parser
	egrep ==> extended global regular expression parser


Phil Eschallier \ E-mail: phile@LS.Com         \  Lagniappe Systems
                 \    or: ...!uunet!lgnp1!phile \   Custom Computer Services
               

kemnitz@mitisft.Convergent.COM (Gregory Kemnitz) (06/07/89)

I read in a UNIX book (I forgot which one) at some time that "grep"
stands for the commands from the ed(1) editor that can be used to approximate
it:

g/re/p

which is read as get /regular_expression/ print.

egrep is extended grep with more general regular expressions than those in
ed(1)
fgrep is fast grep with literal strings only.

-- 
----------------------------------+--------------------------------------
Greg Kemnitz                      |  "He who does not understand baseball
kemnitz@Convergent.COM            |   will never understand America"
                                  |  --Tocqueville

ram@nebulus.UUCP (Richard Meesters) (06/07/89)

In article <8170003@hpfcdq.HP.COM>, benji@hpfcdq.HP.COM (Jeff Benjamin) writes:
> > What is the correct expansion of the acronym "grep"? I'm told that this
> 
> I have heard that "grep" stands for "general regular expression parser."

I thought it stood for "global regular expression parser".

Regards,
Richard Meesters

pete@escher.intel.com (Peter Johnson ~) (06/07/89)

In article <25249@agate.BERKELEY.EDU>, glass@mica writes:
>What is the correct expansion of the acronym "grep"? I'm told that this
>has come up in comp.unix.questions before, but the relevant articles are
>no longer on my news server. I'd also be interested in knowing what the
>acronyms for the other flavors of grep (e.g. egrp) expand to.
>
>--Brett

"grep" stands for "global regular expression print".  It got it's name
from the documentation for ed, which gave the syntax for the print
command as "g/re/p", where g is the line specifier, re is the regular
expression (in slashes) and p is the print command.

"fgrep" gets its name from "fast grep", and it only supports searching
for strings (so the re in its name is a misnomer.)

"egrep" means extended grep because it supports extended regular
expressions. (ie. | and grouping, but not tagging)

-Pete

Peter Johnson

pete@escher.intel.COM
{amdcad,decwrl,hplabs,oliveb,pur-ee,qantel}!intelca!mipos3!pete

andrew@alice.UUCP (Andrew Hume) (06/07/89)

i know i ought not add to the cloud of confusion but i'm in a bad mood.
as some people have observed, grep comes from the ed idiom
	g/re/p

al aho coined egrep for an extended grep which handled alternation amongst other things
he also coind fgrep for the special case of looking for fixed strings.
it has never NEVER NEVER NEVER NEVER stood for fast grep
(as anyone with a clock could tell).
if you don't believe me, mail ava@research.att.com and ask al aho yourself.

cliff@cpsc.ucalgary.ca (Cliff Marcellus) (06/07/89)

In article <883@nebulus.UUCP>, ram@nebulus.UUCP (Richard Meesters) writes:
> > > What is the correct expansion of the acronym "grep"? I'm told that this
> > 
> > I have heard that "grep" stands for "general regular expression parser."
> 
> I thought it stood for "global regular expression parser".
> 

sorry guys, it was its' roots in "ed" "grep" comes from the expression
"g/re/p" meaning Global Regular Expression Print.

Cheers


Cliff Marcellus                UUCP     : {any backbone}!calgary!ssg-vax-a!cliff
Institute for Space Research   DOMAIN   : cliff@ssg-vax-a.phys.UCalgary.CA
Dept of Physics and Astronomy  SPAN     : CANCAL::CLIFF
The University of Calgary                 "If it's not fun, don't do it!"

rsilvers@palladium.UUCP (rsilvers) (06/07/89)

In article <883@nebulus.UUCP> ram@nebulus.UUCP (Richard Meesters) writes:
>In article <8170003@hpfcdq.HP.COM>, benji@hpfcdq.HP.COM (Jeff Benjamin) writes:
>> > What is the correct expansion of the acronym "grep"? I'm told that this
>> I have heard that "grep" stands for "general regular expression parser."
>I thought it stood for "global regular expression parser".
>Richard Meesters

     I thought it was "Grab Regular ExPression."

				--Rob.

-- 
Robert S. Silvers
Epoch Systems, Inc., 313 Boston Post Rd. West, Marlborough, MA 01752
...!linus!alliant!palladium!rsilvers -or- ...!harvard!cfisun!palladium!rsilvers
(508)481-3717

janm@eliot.UUCP (Jan Morales) (06/08/89)

In article <8170003@hpfcdq.HP.COM> benji@hpfcdq.HP.COM (Jeff Benjamin) writes:
>I have heard that "grep" stands for "general regular expression parser."

I heard it comes from how you do the same thing in `ed' or `vi':

	g/<regular expression>/p
	^  ^       ^           ^
-- 
{uunet,pyramid}!pyrdc!eliot!janm

gwyn@smoke.BRL.MIL (Doug Gwyn) (06/09/89)

In article <219@mipos3.intel.com> pete@escher.intel.com (Peter Johnson ~) writes:
>"fgrep" gets its name from "fast grep", and it only supports searching
>for strings (so the re in its name is a misnomer.)

(So is the "fast".)

There are numerous implementations of various flavors of the "grep" tool.
Some people have even merged all the variants into a single tool.

childers@avsd.UUCP (Richard Childers) (06/10/89)

glass@mica.berkeley.edu () writes:

>What is the correct expansion of the acronym "grep"?

	grep == Global Regular Expression Pattern

>I'd also be interested in knowing what the acronyms for the other flavors
>of grep (e.g. egrp) expand to.

	egrep == extended grep		additional pattern metacharacters

	fgrep == fast grep		optimized for fast pattern searches

>--Brett

-- richard


-- 
 *    "We must hang together, gentlemen ... else, we shall most assuredly     *
 *     hang separately."         Benjamin Franklin, 1776                      *
 *                                                                            *
 *      ..{amdahl|decwrl|octopus|pyramid|ucbvax}!avsd.UUCP!childers@tycho     *

guy@auspex.auspex.com (Guy Harris) (06/10/89)

>	actually --
>	grep  ==> global regular expression parser
>	fgrep ==> fixed-string global regular expression parser
>	egrep ==> extended global regular expression parser

Actually, no.  Everybody curious about what "grep" stands for - and
*especially* everybody tempted to post their guess about what it stands
for - should go read Andrew Hume's posting once it arrives on their
machine.  It speaks the truth.

(We now see again why the Frequently Asked Questions posting is a Good
Idea.)

jms@hcx.uucp (Michael Stanley) (06/10/89)

In article <709@palladium.UUCP>, rsilvers@palladium.UUCP (rsilvers) writes:
> In article <883@nebulus.UUCP> ram@nebulus.UUCP (Richard Meesters) writes:
> >In article <8170003@hpfcdq.HP.COM>, benji@hpfcdq.HP.COM (Jeff Benjamin) writes:
> >> > What is the correct expansion of the acronym "grep"? I'm told that this

I heard a long time ago that the origin of the word grep was the following
old 'ed' command:

	g/re/p

where 'g' was a command meaning global (search through whole file),
're' stood for a regular expression, and 'p' meant print.  Basically,
this command accomplished the same thing (in the editor) that grep
accomplishes at the shell level.  If anyone can confirm this, I'd
definitely be interested to hear if it is correct.  I believe I read
this in an old UNIX manual.

	Michael Stanley

friedl@vsi.COM (Stephen J. Friedl) (06/10/89)

> >> > What is the correct expansion of the acronym "grep"? I'm told that this
> >> I have heard that "grep" stands for "general regular expression parser."
> >I thought it stood for "global regular expression parser".
> >Richard Meesters
> 
>      I thought it was "Grab Regular ExPression."

How many of these can people come up with?  Please stop posting
these silly answers, because each is wrong.

     S/tev/e

-- 
Stephen J. Friedl / V-Systems, Inc. / Santa Ana, CA / +1 714 545 6442 
3B2-kind-of-guy   / friedl@vsi.com  / {attmail, uunet, etc}!vsi!friedl

"Friends don't let friends run Xenix" - me

gwyn@smoke.BRL.MIL (Doug Gwyn) (06/11/89)

In article <1261@avsd.UUCP> childers@avsd.UUCP (Richard Childers) writes:
>	grep == Global Regular Expression Pattern

No!  GREP is an acronym for Go Read Every Paragraph of the "Life
With UNIX", where you can find out what "grep" is an acronym for,
as well as many other things better gotten from a book than by
burning large amounts of network bandwidth.

One wonders why people who don't know the correct answer are
nonetheless so confident in their notions that they go ahead
and post misinformation.  Not that it really matters in this
case; what do we care where the name "grep" came from, so
long as we know what it does and how to employ it.

jim@syteke.UUCP (Jim Sanchez) (06/12/89)

Hey it is great to hear somebody who REALLY knows the story.  The g/re/p
is what I had read years ago when I first got started with UN*X and 
considering the source I believe it is authoritative.  Good to hear a
fellow Arkie(Ark Polytech U 1967) with the right answers.

-- 
Jim Sanchez  {sun,hplabs}!sun!sytek!syteke!jim OR
Hughes LAN Systems, Brussels  mcvax!prlb2!sunbim!syteke!jim

pss@unh.UUCP (Paul S. Sawyer) (06/15/89)

In article <9447@alice.UUCP>, andrew@alice.UUCP (Andrew Hume) writes:
...
:> al aho coined egrep for an extended grep which handled alternation amongst 
:> other things
:> he also coind fgrep for the special case of looking for fixed strings.
:> it has never NEVER NEVER NEVER NEVER stood for fast grep
:> (as anyone with a clock could tell).

Then why does TFM, direct from AT&T, say "fgrep (fast grep) searches [etc.]..."
(Paper manual, System V.2.1)

:> if you don't believe me, mail ava@research.att.com and ask al aho yourself.

I might, but mail to that company seems to do funny things unless postage is
attached (i.e., sent thru attmail...)


-- 
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Paul S. Sawyer              uunet!unh!unhtel!paul     paul@unhtel.UUCP
UNH Telecommunications
Durham, NH  03824-3523      VOX: 603-862-3262         FAX: 603-862-2030

andrew@alice.UUCP (Andrew Hume) (06/19/89)

In article <1246@unh.UUCP>, pss@unh.UUCP (Paul S. Sawyer) writes:
> Then why does TFM, direct from AT&T, say "fgrep (fast grep) searches [etc.]..."
> 


the manual is the result of some (probably professional) copyediting,
particularly as it is now three manual pages, not one.
the Ninth Edition manual says "fgrep searches for fixed strings; it uses
a fast and compact algorithm." note that for the case of multiple keywords
it is within a constant of the optimal algorithm, so ``fast'' is justified.

jpr@dasys1.UUCP (Jean-Pierre Radley) (07/23/89)

In article <2555@cveg.uucp> jms@hcx.uucp (Michael Stanley) writes:
>
>I heard a long time ago that the origin of the word grep was the following
>old 'ed' command:
>
>'re' stood for a regular expression, and 'p' meant print.  Basically,
>this command accomplished the same thing (in the editor) that grep
>accomplishes at the shell level.  If anyone can confirm this, I'd
>definitely be interested to hear if it is correct.  I believe I read
>this in an old UNIX manual.
>

You can confirm this on page 18 of the
first edition of Kernighan & Pike,
"The UNIX Programming Environment"

They say explicitly that grep was named from
g/regular-expression/p

Q.E.D.
-- 
Jean-Pierre Radley		CIS: 72160,1341		jpr@jpradley.UUCP