Do Unix Tools Do One Thing Well (2006)

By Xah Lee. Date: . Last updated: .

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

Why UNIX sucks series