Subject: Re: tail argument(s) continue, thousands homeless
To: None <current-users@NetBSD.ORG>
From: John F. Woods <jfw@jfwhome.funhouse.com>
List: current-users
Date: 08/18/1997 13:04:33
David Maxwell writes:
> cat means 'concatenate this file to (by default) my terminal'

`cat' means "concatenate these files into one stream".

Therefore,

`cat -f File1 File2 File3 File4' means "what the hell are you talking about?"

> My point is that just because the functionality is in tail shouldn't exclude
> it from cat. Someone looking for this feature might never think to use tail
> to do this, if they really do want the whole file.

Just because the functionality exists doesn't mean it needs to be in cat.
Why shouldn't cat have an option to send its output to the printer?  To
someone's email account?  Why shouldn't cat be able to fsck the disk first
to make sure the contents it displays make sense?  I've *used* systems where
programs routinely had dozens of completely unrelated options just because
some developer thought it was cool.

Anyway, if you're going to display files on a terminal, you want to use "less"
not "cat" ("oh, but we could add pagination to cat, and it could even fire up
X windows so you could have a scrollbar, too!").  "less" has a follow-EOF
mode as well as everything else you could possibly want for viewing files on
a terminal screen -- and nothing else.