Date: Sat, 22 Jan 2011 01:05:54 +1100 (EST) From: Bruce Evans <brde@optusnet.com.au> To: Oliver Fromme <olli@lurza.secnetix.de> Cc: mdf@freebsd.org, freebsd-arch@freebsd.org Subject: Re: Weed-whacking sysctl(8) Message-ID: <20110122005919.W14506@besplex.bde.org> In-Reply-To: <201101201059.p0KAxHgn053963@lurza.secnetix.de> References: <201101201059.p0KAxHgn053963@lurza.secnetix.de>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 20 Jan 2011, Oliver Fromme wrote:
> mdf@freebsd.org wrote:
> > As bde@ mentioned, there's very little actual use of the sysctl format
> > strings. I recently changed it so the use is even smaller, but I've
> > got a quandary as to how to finish the job.
> >
> > I agree with Bruce that the formatted structs can just be removed.
>
> Will that break scripts that use sysctl(8) for monitoring,
> logging and similar tasks (vm.loadavg for example)?
>
> I've installed such scripts at a few customers' sites over
> the past years. It would be somewhat unfortunate if they
> break when the admins at those sites decide to update the
> OS.
Yes, we shouldn't break the old formatting immediately.
> PS: Personally I like the format very much, because it's
> easy to use in shell scripts. For example, when you write
>
> set $(sysctl -n vm.loadavg)
>
> then you have the three values in $2, $3 and $4.
> Another phrase I've used in scripts quite often is this:
>
> X=$(sysctl -n kern.boottime)
> echo ${X#*\}}
>
> There are other ways to get that piece of information, but
> they're more complicated and/or less efficient.
You are a better shell programmer than most :-). I couldn't write the
${X# expansion without looking it up, and would normally use much larger
awk code.
Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110122005919.W14506>
