我正在尝试在shell脚本中获取命令的返回布尔值:sysctl debug.lowpri_throttle_enabled
(使用zsh运行(。
此命令用于了解macOS是否启用低阶任务(即时间机器(的速度限制。
这是我现在完成的脚本:
value=$(sysctl debug.lowpri_throttle_enabled)
echo $value
我得到的输出是:
>>>debug.lowpri_throttle_enabled: 0
但是我只想要0
/1
作为输出,怎么能只得到布尔值而不得到整个字符串呢?谢谢
我找到了解决方案。参考:https://ss64.com/osx/sysctl.html
添加-n
作为选项时,它将只返回值。
例如
>>>sysctl -n debug.lowpri_throttle_enabled
0
>>>sudo sysctl debug.lowpri_throttle_enabled=1
>>>sysctl -n debug.lowpri_throttle_enabled
1
根据描述,-n
用于:
只显示变量值,而不显示其名称。此选项对于设置shell变量非常有用。
并且-b
用于:
强制以原始二进制格式输出变量的值。不打印名称,也不输出终止换行符。
但我不知道为什么在这种情况下只有-n
有效,而-b
无效。