Do Unix Tools Do One Thing Well (2006)
Do Unix Tools Do One Thing Well?
Unix philosophy says “small is beautiful” and “do one thing well”, but vast majority of unix commands are not beautiful and doesn't do one thing well.
For example
grep supports -r option, while it really should be just grep + find.
The command find is supposed to be a do-one-thing-well command for feeding multiple files to other do-one-thing-well commands. Yet, find itself needs xarg in confused combination with its -exec.
Such examples happens everywhere in unix.
Unix shells is another example.
It began with Bourne shell sh, then several tried to fix its shortcoming.
bash,
csh,
tcsh,
zsh,
ksh.
all in the 90s.
and today (2025-06-04), we have
fish shell, nushell, etc.
In trying to fix the whole shell bag, came the turd Perl .
Unix Shell
- Shell Languages and the Linearization of Syntax
- Why Unix Shell Syntax Sucks (2010)
- Unix Shell Syntax History (2000 to 2013)
- Do Unix Tools Do One Thing Well (2006)
- Origin of Unix Pipe (by Alfred Aho. 2010)
- Why Bash Sucks (2022)
- One Language to Rule Them All? Which Language to Use for Find Replace (2011)
The Unix Pestilence
- The Unix Pestilence (2003)
- UNIX Philosophy, Fast Food the UNIX way. 1983
- The Unix-Haters Handbook. 1994
- The X-Windows Disaster (X11) (1994. Don Hopkins)
- On Unix File System's Case Sensitivity (2001)
- Unix and the mbox Email Format (2002)
- Unix, RFC, Line Truncation (2002)
- The Nature of the Unix Philosophy (2006)
- Do Unix Tools Do One Thing Well (2006)
- Origin of Unix Pipe (by Alfred Aho. 2010)
- Origin of unix bin sbin (by Rob Landley. 2010)
- Origin of Unix Dot File Names (Rob Pike. 2012)
- Why Unix Man Page Sucks (2019)
- Why Unix Shell Syntax Sucks (2010)
- Why Bash Sucks (2022)
- On Unix Filename Characters Problem (2008)