trying to sysctl(3) a char value

David DEMELIER demelier.david at gmail.com
Wed Nov 24 19:01:30 UTC 2010


2010/11/24 Dan Nelson <dnelson at allantgroup.com>:
> In the last episode (Nov 24), David DEMELIER said:
>> Since I cannot adjust the brightness on my HP Probook because it sucks
>> I'm writing a small script that can be use instead. I need to sysctl
>> the following sysctl variables :
>>
>> hw.acpi.video.lcd0.brightness
>> hw.acpi.video.lcd0.levels
>>
>> the -brightness one is easy since it's an integer, but the levels is
>> possibly a char :
>>
>> markand at Melon ~ $ sysctl hw.acpi.video.lcd0.brightness
>> hw.acpi.video.lcd0.brightness: 90
>> markand at Melon ~ $ sysctl hw.acpi.video.lcd0.levels
>> hw.acpi.video.lcd0.levels: 100 50 0 5 10 15 20 25 30 33 36 40 43 46 50 55 60 65 70 75 80 83 86 90 93 96 100
>
> Looking at the source, that sysctl definition is CTLTYPE_OPAQUE with a
> display format of "I", which means that it's just an array of integers.
> Print each one in a loop.  You can also take a look at
> /usr/src/sbin/sysctl/sysctl.c to see how it printed the numbers.
>
> --
>        Dan Nelson
>        dnelson at allantgroup.com
>

Thank you, it works !

-- 
Demelier David


More information about the freebsd-questions mailing list