A Unix novice came to Master Foo and said: "I am
confused. Is it not the Unix way that every program should
concentrate on one thing and do it well?"
Master Foo nodded.
The novice continued: "Isn't it also the Unix way that
the wheel should not be reinvented?"
Master Foo nodded again.
"Why, then, are there several tools with similar
capabilities in text processing: sed, awk and Perl? With
which one can I best practice the Unix way?"
Master Foo asked the novice: "If you have a text file,
what tool would you use to produce a copy with a few words
in it replaced by strings of your choosing?"
The novice frowned and said: "Perl's regexps would be
excessive for so simple a task. I do not know awk, and I
have been writing sed scripts in the last few weeks. As I
have some experience with sed, at the moment I would prefer
it. But if the job only needed to be done once rather than
repeatedly, a text editor would suffice."
Master Foo nodded and replied: "When you are hungry, eat;
when you are thirsty, drink; when you are tired, sleep."