sysctl with regex?
Garrett Cooper
yanefbsd at gmail.com
Wed Feb 10 00:14:16 UTC 2010
On Feb 9, 2010, at 3:28 PM, Andrew Brampton wrote:
> 2010/2/9 Dag-Erling Smørgrav <des at des.no>:
>> Andrew Brampton <brampton+freebsd at gmail.com> writes:
>>> Today I was writing a script to read all the dev.cpu.?.temperature
>>> sysctl OIDs. I was parsing them using a simple grep, but it occurred
>>> to me it might be better if sysctl supported some form of regexp.
>>
>> You mean glob, not regexp...
>
> Could you explain why do I mean glob instead or regexp?
> Is glob simple matches, ie * and ?
> and regexp more complex like [a-z]*
C-shell globs as some programming languages referring to it as, i.e. perl (which this is a subset of the globs concept) allow for expansion via `*' to be `anything'. Regexp style globs for what you're looking for would be either .* (greedy) or .+ (non-greedy), with it being most likely the latter case.
>>> For example instead of typing:
>>> sysctl -a | grep dev.cpu.*.temperature
>>>
>>> I could write:
>>> sysctl dev.cpu.*.temperature
>>
>> Sounds like a good idea. Shouldn't be too hard to implement either.
>
> If I get time I might submit a patch.
I'll see if I can whip up a quick patch in the next day or so -- but before I do that, does it make more sense to do globs or regular expressions? There are pluses and minuses to each version and would require some degree of parsing (and potentially escaping).
Thanks,
-Garrett
More information about the freebsd-hackers
mailing list