Subject: Re: sysv ps(1) implementation [was: ps(1) sysv silliness]
To: Andrew Brown <atatat@atatdot.net>
From: Simon Burge <simonb@netbsd.org>
List: tech-userlevel
Date: 06/12/2000 12:38:58
Andrew Brown wrote:

> e is a binary switch both ways.  so are j and l.  U takes an argument
> both ways.  g doesn't seem to be a netbsd switch.  a, o, p, and t are
> handled the same way, so that's great.
> 
> my point was that you can have opt_j, opt_l, opt_U, arg_U, opt_g,
> opt_a, etc, and use the options in both modes.
> 
> as to the complaints section...
> 
> 	if (behavior==BSD && (opt_f || opt_g || ...))
> 		errx("bsd behavior invalid");
> 
> no?

Without actually coding it up, I think it would look a little unwieldy
in practice and not help maintainability.  Also, the order of the
options can have a bearing - for something trully ugly try
"ps -wwl -o rss,stat -u" and see how it mixes everything together
and is completely different to ps -wwu -o rss,stat -l"...

> of course...if you've already done it the other way...don't you have
> to prescan the options for the -[BV] switch?  do you insist that it be
> the first one?

Yup!

> what if i wanted to do "ps -uaxww"?

The current behaviour is to have BSD and SysV mode separate, except that
adding "ps -ef" to BSD mode was easy...

Simon.