ARCHIVED: In Unix, what do some obscurely named commands stand for?

This content has been archived, and is no longer maintained by Indiana University. Information here may no longer be accurate, and links may no longer be available or reliable.

A list of some of the more obscurely named Unix commands follows:

awk
Aho, Weinberger, and Kernighan

The awk scripting language was named by its authors, Al Aho, Peter Weinberger, and Brian Kernighan. For more, see ARCHIVED: What is awk, and how do I use it?

grep
Global regular expression print

The grep command comes from the command used by the ed program (a simple and venerable Unix text editor) to print all lines matching a certain pattern:

 g/re/p

For more, see About grep

fgrep
Fixed grep

The fgrep command searches for fixed strings only, possibly taking the strings from another file. The "f" does not stand for "fast"; in fact, at times, using the fgrep command can be slower than using the egrep command. However, the fgrep command may still be useful when searching a file for a larger number of strings than the egrep command can handle.

egrep
Extended grep

The egrep command uses fancier regular expressions than the grep command. Many people use the egrep command for its internal algorithms, which are more sophisticated than the grep and fgrep commands. Also, the egrep command is usually the fastest of the three programs.

cat
Catenate

"Catenate" is an obscure word meaning "to connect in a series", which is what the cat command does to one or more files. This is not to be confused with C/A/T, the Computer Aided Typesetter. For more, see Combine several text files into a single file in Unix

nroff, troff
New roff, Typesetter new roff

These two commands are descendants of the roff command, which was a re-implementation of the Multics runoff program. The runoff program would "run off" a good copy of a document.

tee
T

The tee command is named after plumbing terminology for a T-shaped pipe splitter. This Unix command splits the output of another command, sending it to a file and to the terminal.

biff
A dog named Biff

This command, which turns on asynchronous mail notification, was actually named after a dog. Courtesy of Eric Cooper, Carnegie Mellon University:

"I can confirm the origin of biff, if you're interested. Biff was Heidi Stettner's dog, back when Heidi (and I, and Bill Joy) were all grad students at U.C. Berkeley and the early versions of BSD were being developed. Biff was popular among the residents of Evans Hall, and was known for barking at the mailman, hence the name of the command."
rc
runcom (as in .cshrc or /etc/rc)

The rc command derives from the runcom facility from the MIT CTSS system, ca. 1965. From Brian Kernighan and Dennis Ritchie, as told to Vicki Brown:

"There was a facility that would execute a bunch of commands stored in a file; it was called runcom for "run commands", and the file began to be called "a runcom". rc in Unix is a fossil from that usage."
Note: The name of the shell from the Plan 9 operating system is also rc.
Perl
Practical extraction and report language

The Perl language is a text, process, and file manipulation tool, created by Larry Wall. Perl bridges the gap between shell and C programming, and is free and completely portable. The acronym is one of many variants proposed, with varying degrees of seriousness, as the true origin of the name. However, this is currently regarded as apocryphal. Spelling Perl as "PERL", as though it is an acronym, is incorrect. For further information, see the Usenet newsgroup comp.lang.perl and the Perl FAQ.

For more interesting tidbits, see the book Life with Unix by Don Libes.

At Indiana University, for personal or departmental Linux or Unix systems support, see Get help for Linux or Unix at IU.

This is document abnd in the Knowledge Base.
Last modified on 2018-01-18 08:57:22.