我怎样才能只从 sysctl,MacOS 的 return 中获取布尔值
How can I only get the boolean value from the return of sysctl, MacOS
我正在尝试获取命令的 return 布尔值:sysctl debug.lowpri_throttle_enabled
,在 shell 脚本(运行 with zsh)中。
此命令用于了解macOS是否启用低阶任务(即时间机器)的速度限制。
这是我现在完成的脚本:
value=$(sysctl debug.lowpri_throttle_enabled)
echo $value
我得到的输出是:
>>>debug.lowpri_throttle_enabled: 0
但我只想要 0
/1
作为输出,我怎样才能只得到布尔值而不是整个字符串?谢谢。
我找到了解决办法。参考:https://ss64.com/osx/sysctl.html
添加 -n
作为选项,它只会 return 值。
例如
>>>sysctl -n debug.lowpri_throttle_enabled
0
>>>sudo sysctl debug.lowpri_throttle_enabled=1
>>>sysctl -n debug.lowpri_throttle_enabled
1
根据描述,-n
适用于:
Show only variable values, not their names. This option is useful for setting shell variables.
而 -b
用于:
Force the value of the variable(s) to be output in raw, binary format. No names are printed and no terminating newlines are output.
但我不知道为什么在这种情况下只有 -n
有效,而 -b
无效。
我正在尝试获取命令的 return 布尔值:sysctl debug.lowpri_throttle_enabled
,在 shell 脚本(运行 with zsh)中。
此命令用于了解macOS是否启用低阶任务(即时间机器)的速度限制。
这是我现在完成的脚本:
value=$(sysctl debug.lowpri_throttle_enabled)
echo $value
我得到的输出是:
>>>debug.lowpri_throttle_enabled: 0
但我只想要 0
/1
作为输出,我怎样才能只得到布尔值而不是整个字符串?谢谢。
我找到了解决办法。参考:https://ss64.com/osx/sysctl.html
添加 -n
作为选项,它只会 return 值。
例如
>>>sysctl -n debug.lowpri_throttle_enabled
0
>>>sudo sysctl debug.lowpri_throttle_enabled=1
>>>sysctl -n debug.lowpri_throttle_enabled
1
根据描述,-n
适用于:
Show only variable values, not their names. This option is useful for setting shell variables.
而 -b
用于:
Force the value of the variable(s) to be output in raw, binary format. No names are printed and no terminating newlines are output.
但我不知道为什么在这种情况下只有 -n
有效,而 -b
无效。