J'aimerais obtenir le nom marketing d'Apple, le nom de code, pour une version donnée de MacOS (par exemple, 10.12 est MacOS Sierra) à partir du service en ligne d'Apple à l'adresse suivante support-sp.apple.com/sp/product?edid=
.
Ceci est possible pour certaines versions en utilisant la requête http :
curl https://support-sp.apple.com/sp/product?edid=10.12.0
Cependant, je n'arrive pas à faire en sorte que l'URL donne une réponse cohérente à la question suivante https://support-sp.apple.com/sp/product?edid=<ver>
.
J'essayais de confirmer ma version 10.13.6 et j'obtenais sans cesse des erreurs. J'ai essayé la 10.14.0 et ça n'a pas marché. Essayer 10.12.6 fonctionne, donc j'ai fait une boucle pour essayer toutes les versions :
$ for i in {6..14} ; do echo "10.${i}.0:" $(curl -s "https://support-sp.apple.com/sp/product?edid=10.${i}.0" | xmllint --format -xpath "//root/configCode/text()" - 2>/dev/null) ; done
retours : 10.6.0: Mac OS X 10.6 10.7.0: OS X Lion 10.8.0: OS X Mountain Lion 10.9.0: OS X Mavericks 10.10.0: 10.11.0: OS X El Capitan 10.12.0: macOS Sierra 10.13.0: 10.14.0:
Si ce n'est pas possible, existe-t-il un meilleur endroit pour s'assurer que, lorsqu'il est exécuté depuis un shell bash sur más Systèmes MacOS dont je peux obtenir le nom amical ? Au moins les 6 dernières versions environ (je ne suis pas sûr du nombre de versions pré-Lion qui existent dans la nature).