macOS 软件分发条件是由集成的开源 Munki 库提供的一组属性,用于确定安装适用性。条件是在每个应用程序级别定义的,在下载并安装软件之前进行评估。
Munki 支持一些内置条件。
条件格式
条件的编写格式如下:
machine_type == "laptop" AND os_vers BEGINSWITH "10.7"
条件比较属性
属性 | 类型 | 说明 | 示例比较 |
hostname | 字符串 | Hostname | hostname=="Lobby imac " |
arch | 字符串 | 处理器架构。例如:“powerpc”、“i386”、“x86_64” | arch=="x86_64" |
os_vers | 字符串 | 完整操作系统版本。例如:“10.7.2” | os_vers BEGINSWITH "10.7" |
os_vers_major | 整数 | 主要操作系统版本。例如:“10” | os_vers_major == 10 |
os_vers_minor | 整数 | 次要操作系统版本。例如:“7” | os_vers_minor == 7 |
os_vers_patch | 整数 | 小发行版本。例如:“2” | os_vers_patch >=2 |
machine_model | 字符串 | “MacMini1,1”、“iMac4,1”、“MacBookPro8,2” | machine_model == "iMac4,1" |
machine_type | 字符串 | “laptop”或“desktop” | machine_type == "laptop" |
ipv4_address | 字符串数组 | 包含所有接口的当前 IPv4 地址。 | ANY ipv4_address CONTAINS '192.168.161.' |
munki_version | 字符串 | 已安装的 munkitools 的完整版本 | munki_version LIKE '*0.8.3*' |
serial_number | 字符串 | 计算机序列号 | serial_number =="W9999999U2P" |
date | UTC 日期字符串 | 日期和时间。请注意将字符串强制转换为 NSDate 对象时所需的特殊语法。 | date>CAST("2013-01-02T00:00:00Z", "NSDATE") |