This is my attempt to show where key parts of the Unix/Linux command hierarchy came from. I do not include visual development tools (IDEs). The list is perennially out of date. Please use this contact form to let me know of changes and, if I’m still active in this, I will consider your update. As they say, TIA.

The List

Acronyms are at the bottom.

Table 1. Origins of common Unix programs
Name Type Origin

addr2line

c

apk

c

Alpine

apply

c

apropos

c

UCB

arch

c

ar

c

Unix

as

c

Unix

at

c

Unix

awk

c

Unix

banner

c

basename

c

batch

c

bc

c

biff

c

UCB

bison

c

FSF (clone of yacc)

cal

c

Unix

calendar

c

Unix

cap_mkdb

c

UCB

captoinfo

c

UCB

cat

c

Unix

cc

c

Unix

c++

c

Unix

chflags

c

chfn

c

UCB

chgrp

c

Unix

chmod

c

Unix

chpass

c

UCB

chsh

c

UCB

clang

c

clear

c

UCB

cmp

c

Unix

col

c

colrm

c

column

c

comm

c

Unix

compress

c

corelist

c

cp

c

Unix

cpio

c

Unix

cpp

c

Unix,

crontab

c

csh

c

UCB

csplit

c

Unix

ctags

c

ctfconv

c

ctfdump

c

ctfstrip

c

cu

c

Unix

CUPS

ss

Apple

cut

c

Unix

date

c

Unix

dbm

c

Unix

dc

c

Unix

dd

c

Unix

deroff

c

UCB

df

c

Unix

diff3

c

Unix

diff

c

Unix

dig

c

dirname

c

dnf

c

Linux

doas

c

OpenBSD

du

c

Unix

dump

c

Unix

echo

c

Unix

echoUnix

c

ed

c

Unix

edUnix

c

egrep

c

Unix

eject

c

eject

c

Various

encrypt

c

env

c

Unix

ex

c

UCB

expand

c

expr

c

Unix

ext*

c

Linux

false

c

Unix

fgen

c

fgrep

c

Unix

file

c

Unix (I wrote the Linux impl)

find

c

Unix

finger

c

UCB

flex

c

flex

c

FSF

fmt

c

UCB

fold

c

from

c

fstab

c

Unix

fstat

c

ftp

c

UCB

fuser

c

gcc

c

FSF

gcov

c

UCB

gdb

c

FSF

gencat

c

getcap

c

getconf

c

getent

c

(Sun: part of YP)

getopt

c

getopt

c

USG

ghostscript(gs)

c

Peter Deutsch

git

c

Linus,(self-disparagingly self-named)

gprof

c

FSF

gprof

c

Unix

grep

c

grep

c

Unix

groups

c

gunzip

c

gzcat

c

gzexe

c

gzip

c

h2ph

c

h2xs

c

head

c

Unix

help

c

help

c

Multiple

hexdump

c

host

c

hostname

c

hoststat

c

htpasswd

c

httpd

c

many

id

c

Unix

ifconfig

c

UCB

indent

c

UCB

info

c

FSF

install

c

Numerous

ipcrm,ipcs

c

USG

java

c/ss

Sun

join

c

Unix

jot

c

kdump

c

keynote

c

kill

c

Unix

ksh

c

Unix

ktrace

c

lam

c

last

c

lastcomm

c

last

c

Unix

ldap

c

ld

c

Unix

ldd

c

leave

c

less

c

UCB

lex

c

Unix

libnetcfg

c

libtool

c

Linux

c

llvm-config

c

ln

c

Unix

lndir

c

locale

c

locate

c

lock

c

logger

c

login

c

logname

c

look

c

lorder

c

Unix

lpq

c

UCB

lpr

c

UCB

lpr

c

Unix/UCB

lprm

c

UCB

ls

c

Unix

m4

c

Unix

machine

c

Mail

c

mail

c

Unix

mailx

c

UCB

make

c

Unix

man

c

Unix

mandoc

c

OpenBSD

md5

c

merge

c

mesg

c

uCB

mixerctl

c

mkdep

c

mkdir

c

Unix

mkfs

c

Unix

mklocale

c

mktemp

c

more

c

UCB

mount

c

Unix

mt

c

Unix

mv

c

Unix

nc

c

netstat

c

UCB

newsyslog

c

UCB

NFS

FS

Sun

nfsstat

c

Sun

nice

c

Unix

nix

c

Pkg manager from nixos

nl

c

nm

c

Unix

nohup

c

Unix

nslookup

c

objcopy

c

objdump

c

od

c

Unix

openrsync

c

OpenBSD

openssl

c

OpenSSL

otp-md5

c

otp-rmd160

c

otp-sha1

c

pagesize

c

passwd

c

Unix

paste

c

Unix

patch

c

Larry Wall

pax

c

pctr

c

perl

c

Larry

pgrep

c

piconv

c

pkg*

c

Various

pkill

c

pl2pm

c

pod2html

c

pod2man

c

pod2text

c

pod2usage

c

podchecker

c

podselect

c

pr

c

Unix

printenv

c

Unix

printf

c

Unix

/proc

k

Unix, Linux

prove

c

ps

c

Unix

purgestat

c

pwd

c

Unix

quota

c

commands

quota

c

UCB

radius

c

ranlib

c

Unix

rcs

c

Walter

rdist

c

rdistd

c

readelf

c

readlink

c

renice

c

Unix

reset

c

rev

c

rksh

c

Unix

rm

c

Unix

rmdir

c

Unix

rpcgen,rpcinfo

c

Sun

rpm

c

Red

rs

c

rsh

c

UCB

rup

c

Sun

rusers

c

Sun

rwall

c

UCB

SCCS

c

USG

scp

c

OpenBSD

script

c

UCB

sdiff

c

sed

c

Unix

sendbug

c

sendmail

c

UCB

sftp

c

sha

c

shadow

c

Unix

shar

c

sh

c

Unix

showmount

c

signify

c

OpenBSD

size

c

UCB

skeyaudit

c

skey

c

skeyinfo

c

skeyinit

c

skeyprune

c

sleep

c

Unix

smtp

c

Various

sndioctl

c

snmp

c

Various

sort

c

Unix

spell

c

split

c

ssh

c

Tatu,OpenBSD

stat

c

strings

c

Unix

strip

c

Unix

stty

c

Unix

su

c

Unix

sudo

c

OpenBSD

sync

c

Unix

systat

c

UCB?

tail

c

Unix

talk

c

UCB

tar

c

Unix

tee

c

Unix

telnet

c

UCB

test

c

Unix

tftp

c

UCB

tic

c

UCB

time

c

Unix

tmux

c

top

c

touch

c

Unix

tput

c

UCB

tr

c

Unix

true

c

Unix

tset

c

tsort

c

Unix

tty

c

Unix

UFS

c

UCB

ul

c

uname

c

USG

uncompress

c

unexpand

c

unifdef

c

uniq

c

Unix

units

c

Unix

unvis

c

uptime

c

users

c

utmp,wtmp

c

uudecode

c

uuencode

c

vacation

c

vi

c

UCB

vis

c

vmstat

c

UCB

wall

c

UCB

wc

c

Unix

w

c

UCB

what

c

USG

whatis

c

UCB

whereis

c

UCB

which

c

UCB

whoami

c

who,

c

am

who

c

Unix

whois

c

wmi

c

write

c

UCB

xargs

c

XFS

FS

Linux

X

GUI

MIT

xsubpp

c

yacc

c

Unix

yes

c

Unix

ypcat

c

yum

c

Linux

zsh

c

?

Types:

c

Command or other executable

f

file

FS

File system type

k

Kernel feature

ss

subsystem

Sources:

FSF

Free Software Foundation

FreeBSD

The FreeBSD project / team members

Linux

Means I know the program came from some Linux project, not sure which.

OpenBSD

The OpenBSD project / team members

UCB

University of California at Berkeley (BSD 2.x, BSD 4.x), Computer Systems Research Group (CSRG)

Unix

Original Bell Labs Research Unix. Offically: not an acronym. Unofficially: Eunached Multics.

USG

Unix Support Group, a non-Bell-Labs part of AT&T