Si vous cherchez à diviser le numéro de version de macOS en fonction du versionnement sémantique pour la logique de script, voici un petit bout de code que j'utilise
product_version=$(sw_vers -productVersion)
os_vers=( ${product_version//./ } )
os_vers_major="${os_vers[0]}"
os_vers_minor="${os_vers[1]}"
os_vers_patch="${os_vers[2]}"
os_vers_build=$(sw_vers -buildVersion)
# Sample semver output
echo "${os_vers_major}.${os_vers_minor}.${os_vers_patch}+${os_vers_build}"
# 10.12.6+16G29
Vous pouvez utiliser ces variables dans la logique de script pour exécuter différentes commandes basées sur la version de macOS. Cela donne un contrôle légèrement plus granulaire jusqu'à la version de patch ou de build.
# Sample bash code
if [[${os_vers_minor} -ge 11]]; then
DMG_FORMAT=ULFO
elif [[${os_vers_minor} -ge 4]]; then
DMG_FORMAT=UDBZ
else
DMG_FORMAT=UDZO
fi