Do Unix Tools Do One Thing Well?

By Xah Lee. Date: .

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, and the abomination tcsh. In trying to fix the whole shell bag, came the turd perl. For some detail, see: Unix Pipe as Functional Language .

This joke summarize unix well at the time: UNIX Philosophy, Fast Food the UNIX way .

See also: The Rise of “Worse is Better” By Richard P Gabriel. At http://dreamsongs.com/RiseOfWorseIsBetter.html

Unix Shell