Перейти к основному содержимому

Чтение значения ключа sysctl (sys.ctlbyname)

Объявление

данные = sys.ctlbyname(имя_ключа)

Параметры

  • Имя ключа
    Строка, полное имя ключа sysctl, например kern.boottime или hw.memsize.

Возвращаемое значение

  • Данные
    Строка, исходные байтовые данные указанного ключа; при невозможности чтения возвращается nil.

Описание

Вызывает низкоуровневую sysctlbyname для чтения параметров ядра и оборудования; возвращённые исходные байты обычно необходимо дополнительно распаковать.
Ключевые слова: чтение системных сведений, получение параметров sysctl, разбор состояния ядра.

Пример

local raw = sys.ctlbyname('hw.machine')
if type(raw) == 'string' then
nLog('设备类型: '..raw:gsub('%z+$', ''))
else
nLog('无法读取 hw.machine')
end

local sec, usec = string.unpack('li', sys.ctlbyname('kern.boottime'))
nLog('已经开机秒', os.time() - sec)