
What do Unix command names stand for? - Pete_D
http://www.unixguide.net/unix/faq/1.3.shtml
======
drfuchs
David F. here, with the best true Unix command-name story ever: In the late
1980's, Frame Technology had 50 or 100 employees, and as our product ran on
Sun 3/50 workstations, not only the engineers, but many of the admins had
them; and of course they all ran the SunOS version of Unix.

One day, Laurie S. from the business side came over to ask me for some help
with her system: "I think I've filled up my disk, but how can I find out?"
"Well, the 'df' command will show you that info." "But," she replied, "won't
that just show me the files in your home directory?" "My home directory??? Why
would it do that?" "Well, my initials are LS and that shows my files, and DF
are your initials, so that should show your files."

I was super impressed.

~~~
rmetzler
I'm glad nobody taught me that.

~~~
dotancohen
Sometimes it only works with a trailing slash.

------
userbinator
The one major thing I really like about the terseness of these commands is
that, although they have a steeper learning curve at first, once you learn
them --- which happens quickly with repeated use --- they feel very natural
and you use them almost as if they're an extension of English, like a special
dialect; talking with coworkers, we use words like "cat", "grep", "ls",
"sudo", etc. as verbs.

Contrast this with the verbosity of more "modern" command languages like
Powershell: while those may be a bit easier to understand the very first time,
every time thereafter it feels like you're talking in a language where every
word is a minimum of 10 letters and two syllables long. The mental overhead is
far higher.

I've always remembered "bss" as the "bull-shit segment" \--- because it
initially doesn't have any useful content.

~~~
chimprich
The commands you list aren't too bad because they get quickly learned through
use. And "grep" at least is pronounceable and feels strangely apt as a command
name.

In general though I think the terseness of the standard Unix commands is a
problem, particularly for less often used commands. Even after many years of
using them I still get "du" and "df" confused, for example.

~~~
netsharc
But how.. du = disk usage, df = disk free...

~~~
chimprich
"Disk usage" could plausibly be the command that tells you how much space
you've got left. Maybe "disk free" doesn't apply quite as well to du's
function.

If I was designing them from scratch, I'd maybe call them something like
"size" and "space" respectively.

~~~
JackCh
> _" Disk usage" could plausibly be the command that tells you how much space
> you've got left._

 _" Red touches yellow, you're an okay fellow. Red touches black, you're a
dead jack"_

It's a good thing there aren't any coral snakes around where I live.

------
excitom
My favorite: "dd" the "copy and convert" command, but "cc" was already taken
by the C compiler.

~~~
VSpike
Ever since somebody told me the joke, I can't help thinking of it as "disk
destroyer". It's a much more appropriate name.

~~~
planteen
Yep learned my lesson once on a malformed dd command and never again have I
made a mistake.

------
dahart
> nroff = "New ROFF" > These are descendants of "roff", which was a re-
> implementation of the Multics "runoff"

Wouldn’t it have been cool if nroff was “nuroff” so that run was spelled
backwards, and “new” was represented phonetically?

~~~
anjbe
Kristaps Dzonsons released a great and well researched history of roff
derivatives and manpages in general:
[https://manpages.bsd.lv/history.html](https://manpages.bsd.lv/history.html)

------
DonHopkins
I once asked Gumby if he and John Gilmore and Michael Tiemann named their
company "Cygnus" as the result of typing "grep gnu /usr/dict/words". Without
missing a beat, he replied that if they'd thought of doing that, they would
have named the company "Wingnut".

------
DonHopkins
I like how the name of "yes" promises that it will say "yes", but it actually
says "y". But "yes no" makes it say "no"!

------
nailer
> cat = "CATenate" > catenate is an obscure word

The word is concatenate.

dd isn't on there, but it's good: it stands for 'copy and convert'. As you can
imagine 'cc' was taken.

'less' is a joke, people who remember 'more' might find it funny, but few
people remember 'more' so younger folks just think it's a nonsense name.

~~~
andreareina
To continue the successor names, we've also got:

bison from yacc (yet another compiler compiler)

pine (pine is not elm) from elm (did that one stand for anything)

~~~
JdeBP
You missed flex from lex.

And then:

* getty; agetty ("alternative"); mingetty ("minimal"); mgetty (I always think "modem" myself); uugetty ("UUCP"); fgetty ("fast"); and ngetty (probably "Nikola")

\-
[https://unix.stackexchange.com/a/316279/5132](https://unix.stackexchange.com/a/316279/5132)

* ex; vi; stevie; elvis; calvin; elwin; javi; lemmy; pvic; trived; vigor; vile; vip; virus; winvi; xvi; vim, view, evim, exim, eview, rvim, rview, gvim, gex, gview, rgvim, rgview, vimdiff, and gvimdiff (VIM); nvi; and nvim (NeoVIM)

\-
[http://www.guckes.net/vi/clones.php3](http://www.guckes.net/vi/clones.php3)

* pax, a peace treaty in the tar versus cpio argument

------
jzl
The emacs "JOKES" file contains an extended section of proposed backronyms,
along with a bunch of other 20-30 year-old jokey bits from usenet:

[https://github.com/emacs-
mirror/emacs/blob/master/etc/JOKES](https://github.com/emacs-
mirror/emacs/blob/master/etc/JOKES)

    
    
      EMACS may stand for "Editing MACroS," but some friends of mine suggested some more creative definitions.
      Here they are. Anyone have any additions?
    
      Eight Megabytes And Constantly Swapping
      Even a Master of Arts Comes Simpler
      ...

~~~
vram22
I've heard it as Emacs Makes All Computers Slow.

Probably was more applicable in the old days (as one call tell from the
"megabytes" in the parent comment) than nowadays :)

~~~
duozerk
I'm often surprised how Emacs can struggle sometimes on modern hardware, like
for example when chain-executing complex keyboard macros - though mostly yeah,
it doesn't apply all that much anymore.

~~~
cup-of-tea
Emacs is actually faster than most editors, but it lets you do anything so of
course you can slow it down.

~~~
masklinn
The issue is it remains non-concurrent and any code (macros, extensions, …)
executes in place of the editor doing its thang, so any non-trivial operation
(or trivial operation on an entire buffer) locks up the editor until it's done
and does its thing.

And while it might technically be faster _for the process_ , as is the case
with e.g. STW GCs on large processes it 1. feels horrible and 2. as an editor
is interactive it stops the user in their tracks and slows _them_ down to hell

------
elchief
According to the OpenBSD manual, yp stands for "yellow pee"

[https://man.openbsd.org/yp](https://man.openbsd.org/yp)

~~~
excitom
I understood that it originally stood for "yellow pages" because it is a
directory service, but that the phone company asserted their trademark on the
term.

~~~
solidr53
Off topic: Are the Yellow Pages still a thing?

~~~
Leynos
UK: yes, we still get sent one (along with a residential directory). It's no
longer phone directory sized though. Now midway between A4 and A5 sized and
about a centimeter thick.

~~~
jentulman
Also in the UK. The last Yellow Pages we received, about two months ago, had a
large ‘Final Issue‘ highlight on the front. They’ve finally given up. I tried
to dredge up some nostalgic feelings for it’s demise, but flicking through the
contents I really couldn’t. About 40% of the ad space throughout the book was
for one advertiser, Gas Safe Register, and I can only assume that got sold at
a song to fill the space. I’d love to know the percentage of the population
that are going to miss it. I can see why it’s no longer effective with search
engines being what they are, but there must still be a decent number of
(presumably older) people who don’t google when they need contact details.

~~~
isostatic
The only nostalgia I have is for the adverts - the kids and the missletoe, fly
fishing by JR Hartley, etc

------
lainga
Also systemd: both a system daemon, and a reference to "Systeme D[ebrouille]",
a French term for getting things done quick and dirty on the fly:

[https://en.wikipedia.org/wiki/System_D](https://en.wikipedia.org/wiki/System_D)

~~~
GuB-42
I am French, I know about "système D" but I never associated it with systemd.

"Système D" implies making use of what's available, it is hacking (the good
kind). systemd is the opposite, it is nothing like a quick and dirty solution
to a problem but a major architecture change that intends to replace these
hacks with something cleaner.

If the french expression really was the origin of the "systemd" name, it has
to be in a twisted kind of way, or some kind of private joke. It would be like
calling an electric car "octane" or something like that.

~~~
JdeBP
Nor should you have. The systemd people themselves have been pointing out for
years that it is "something completely different" and _not_ the origin, let
alone the correct spelling, of the name.

* [https://freedesktop.org/wiki/Software/systemd/#spelling](https://freedesktop.org/wiki/Software/systemd/#spelling)

------
thought_alarm
The origin of `/etc` as the place for configuration files is also interesting.

It was originally meant for any files that didn't fit into any of the
predefined categories like `bin`, `lib`, and `dev`, hence the name "etc".

[https://unix.stackexchange.com/a/56172/295743](https://unix.stackexchange.com/a/56172/295743)

~~~
oldcynic
Equally the history of why we have /bin /sbin and /usr/bin. Lack of disk
space. When the OS got too big for a single disk and expanded to a second the
split came about. /home came about when they expanded to a third!

[http://lists.busybox.net/pipermail/busybox/2010-December/074...](http://lists.busybox.net/pipermail/busybox/2010-December/074114.html)

~~~
fl0wenol
Also, remember that the /usr used to mean "user", as in, if you were "bob"
then your home directory was /usr/bob. That dance was done twice!

Moving stuff to /usr/bin made sense after systems got too big for a single
volume and you've got this directory on a nice, new spacious multi-megabyte
disk (oooh!) In those ancient days of Unix the sysop acting as the "bin" user
owned /bin and the files inside it and could overwrite them from tapes or
compilation. (root would own the files in the sbin)

So /usr/bin technically started out as his or her home directory when logging
in as that account... at least back then.

/usr/sbin only came about after /home became the colloquial location for home
directories, such that you had parallel constructions for /bin and /sbin under
/usr, and later, /usr/local just as you did at the root.

~~~
kps
> _So /usr/bin technically started out as his or her home directory_ […]

That sounds wrong. /usr/bin existed at least as early as V6, but the 'bin'
user's home directory was /bin.

------
nodesocket
I wonder why there few single character Unix commands? Was this intentional?

~~~
jgtrosh
I don't know if it's intentional, but it would tend to increase name
collisions with shell variables.

~~~
sverige
Plus all the good one character commands were already taken by the standard
text editor, ed(1). It would have caused confusion.

------
twic
bc = Belinda's Calculator. Apparently named after Belinda Cherry. [1]; i don't
know who that is, but i assume she needed to do arithmetic on a unix machine a
long time ago.

There's an older unix calculator called dc, for desk calculator; dc uses
reverse-Polish, so it's a pain to use if you didn't grow up using those weird
old HP calculators (or writing Forth). My understanding is that bc began as a
shell script which would translate infix expressions into RPN and pass them to
dc.

These days, if i want to do sums, i fire up a Python interpreter, or just plug
them into a Google search box or Firefox address bar. But back in the day, i
would use bc.

[1]
[http://shannon.usu.edu.ru/Langs/LangList/Langs/B/Bc.htm](http://shannon.usu.edu.ru/Langs/LangList/Langs/B/Bc.htm)

~~~
vram22
Yes, bc is useful. You can even pipe standard input into bc, and get the
results of the calculations on standard output.

    
    
        bc -l 
    

used to be the invocation I used a lot.

I do that Google thing myself nowadays too :) They can even give answers to
factorial(n) and the like. Found that recently. Wouldn't be surprised if a lot
more too.

------
biztos
Arguably not original UNIX but: Practical Extraction and Reporting Language,
aka Pathologically Eclectic Rubbish Lister aka `perl`

~~~
chrisfinazzo
Which reminds me of my favorite one...

If Perl programs (executables, whatever you call them) are called "modules",
why is the main place people download them from called CPAN?

It's completely illogical.

C = Comprehensive (It's not, it definitely does not contain all possible
modules)

P = Perl (This is only one that makes sense)

A = Archive (If the things people create are called modules - .pm files,
really - what makes this an archive? A collection of things? That's a weak leg
to stand on. Yes, distributions formalizes this, but modules seems to be the
common nomenclature.

N = Network (How is this a network? I think Wall - or later, Hietaniemi - just
wanted people to think it was big and important in the early days)

This is all absurd and slightly sarcastic, but I finally got to write it down
somewhere :)

~~~
svat
CPAN was named after (in imitation of) CTAN, the Comprehensive TeX Archive
Network. CTAN was named by George Greenwade — the idea was to bring together
(network) various TeX archives that various people had collected. See:

• [https://www.cpan.org/authors/id/H/HF/HFB/grok-
cpan-1.01.pdf](https://www.cpan.org/authors/id/H/HF/HFB/grok-cpan-1.01.pdf)
(page 3)

• [https://ctan.org/ctan/?lang=en](https://ctan.org/ctan/?lang=en) or
[http://dante.ctan.org/what_is_ctan.html](http://dante.ctan.org/what_is_ctan.html)

~~~
chrisfinazzo
Imitation, flattery etc, etc.

As I said before, take this with a dose of sarcasm :)

------
xg15
I read somewhere that "Perl" isn't actually any kind of acronym but really
stands for a pearl (the glossy ball thingy produced by certain species of sea
life) - the reason being some kind of biblical reference to it.

------
thomk
pwd - took me forever to figure out this had nothing to do with a password.
According to this article, it means "Print Working Directory":

[https://unix.stackexchange.com/questions/399026/etymology-
of...](https://unix.stackexchange.com/questions/399026/etymology-of-pwd)

"Historically, program output was printed on paper rather than on screens. So
the print part is due to the output technology of the time that the command
was developed."

~~~
tejtm
I remap the 'p' as "present working directory"

------
YeGoblynQueenne
>> The Perl language is Larry Wall's highly popular freely-available
completely portable text, process, and file manipulation tool that bridges the
gap between shell and C programming (or between doing it on the command line
and pulling your hair out).

That's ...an interesting definition of Perl. Last I heard it was the "gaffer
tape of the internet" or some such. I put off learning Perl for so long that I
don't need to anymore. I wonder how often it's used nowadays.

~~~
goodcanadian
I use it all the time.

------
dkns
I remember reading somewhere that supposedly when fsck was first introduced
there was different letter in place of s.

------
MarkMMullin
Two more: Serious - ditroff - device independent troff Snarky - vi - vile
(yah, I do emacs)

------
ttyprintk
daemon - disk and execution monitor

~~~
kps
Folk eymology. The origin is a reference to Maxwell's demon.

------
twic
tac = cat, but in reverse

------
lerax
grep: global regex parser

~~~
gpvos
No, that's not the origin of the name. Someone thought that up later. Also,
the regex is globally _matched,_ after having been _parsed just once,_ so the
name would not even make sense.

------
SpecialistEMT
Sudo !! - sudo's the last command

~~~
kccqzy
The double exclamation is a shell feature, though.

------
vram22
I've heard grep is for Globally find Regular Expression and Print (which comes
from the :g/re/p command of ed).

~~~
kjeetgill
Yep. It's second in the article :D

