On Sun, Apr 26, 2015 at 10:35 AM, Wolfgang Corcoran-Mathe <first.lord.of.t...@gmail.com> wrote: > > Quoth Lee Fallat on Sat, Apr 25 2015 21:57 -0400: >> >> The UNIX Hater's Handbook. A great perspective on UNIX. > > > In what way? I remember a chapter-length rant about rm(1) being > broken because it actually removed things and some (accurate) > complaints about X; otherwise, Dennis Ritchie's preface seemed like > the best part.
- shells interpret '*' and other globs: * If programs does not interprets theses globs themselves, they cannot do additional checks, e.g. `rm` cannot check `*` to avoid potential dangerous actions. * If programs interprets these globs themselves, like `git` or `hg`, then shells' interpretation is redundant. - Special characters like spaces, tabs, new lines are valid in file names, but shells are unhappy with them. - Different UNIX ship different commands. Nowadays things are much better, but this problem still exist, mostly between bsd(darwin) and linux. - Data passes through programs as strings. Sender need to encode and receiver need to decode. What makes things worse is there are no common standard strings format for interoperation.