Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 May 2012 16:51:49 -0500
From:      Bryan Drewery <bryan@shatow.net>
To:        Doug Barton <dougb@FreeBSD.org>
Cc:        freebsd-current@freebsd.org
Subject:   Re: [review request] usr.sbin/service - make showing files configurable
Message-ID:  <4FB572F5.4070801@shatow.net>
In-Reply-To: <4FB56F8C.2000304@FreeBSD.org>
References:  <4FAF291C.8090401@shatow.net> <4FB04084.5070202@FreeBSD.org> <4FB10A1B.7090102@shatow.net> <4FB56F8C.2000304@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help


On 5/17/2012 4:37 PM, Doug Barton wrote:
> On 05/14/2012 06:35, Bryan Drewery wrote:
> 
> 
>> On 5/13/2012 6:15 PM, Doug Barton wrote:
>>> On 5/12/2012 8:23 PM, Bryan Drewery wrote:
>>>> Hi,
>>>>
>>>> I found service(8) to be inconsistent that it listed files with
>>>> `service -e`, but plain services with `service -l`
> 
>>> That behavior is by design.
> 
> 
> 
>> Could you please elaborate on the design decision?
> 
> For services that are enabled (IOW, a tiny subset of the overall
> number) I thought it was useful to indicate to the user where those
> services come from. The -l option dumps everything in the directories,
> even if it's not a service. Users interested in differentiating
> /etc/rc.d from $local_startup can use ls.

Thanks for explaining.

> 
>> I did of course look in base for uses of service -e and service
>> -l, before considering this patch. The only case I can find is in a
>> cshrc example, which my patch does not affect.
> 
> That's not relevant, as you cannot possibly know what other uses
> service(1) is being put to. Also, it's bad form to change the default
> output of a tool (and/or the semantics of its command line options)
> years after its introduction.

True.

> 
>> I had expected service -e to behave like service -l, so I could
>> for example, put it into a loop and check all services, using the
>> service(8) script itself.
> 
>> for service_name in `service -e`; do service status $service_name
>> || service start $service_name; done
> 
> for service in `service -e` ; do
> 	service ${##*/service} status || service ${##*/service} start
> done

Yes, I resorted to that before the patch. I just think consistency is
better.

> 
> (Note, your syntax for the service command is wrong above.)

Yeah it's what I get for mashing a pseudo example up and not testing it!

> 
> 
> hth,
> 
> Doug
> 

Thank you,
Bryan Drewery



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4FB572F5.4070801>