Функция онлайн-версии Apple support-sp.apple.com/sp/product?edid= не работает для всех версий MacOS

4

Я хотел бы получить маркетинговое название Apple, кодовое название для данной версии macOS (например, 10.12 - macOS Sierra) от онлайн-службы Apple по адресу support-sp.apple.com/sp/product?edid=.

Это возможно для некоторых версий, использующих http-запрос:

curl https://support-sp.apple.com/sp/product?edid=10.12.0

Тем не менее, я не могу получить URL-адрес, чтобы дать последовательный ответ https://support-sp.apple.com/sp/product?edid=<ver>.

Я пытался подтвердить свою версию 10.13.6 и продолжал получать ошибки. Я попробовал 10.14.0, и это не сработало. Попытка 10.12.6 работает, поэтому я сделал цикл, чтобы попробовать все версии:

$ 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

возвращает: 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:

Если это невозможно, есть ли лучшее место, чтобы при запуске из оболочки bash в большинстве систем MacOS я мог получить понятное имя? По крайней мере, последние 6 или около того версий (я не уверен, сколько предварительных версий существует в дикой природе).

johnnyB
источник
Это НЕ дубликат Как я могу найти «понятное имя» операционной системы из оболочки / терминала / bash? потому что (как вы можете видеть мой комментарий там) «необязательное» решение НЕ работает. Я прокомментировал, но не достаточно места, чтобы объяснить, поэтому я открыл этот новый вопрос.
johnnyB
support-sp.apple.comдается в ответ на: apple.stackexchange.com/questions/333452/... , superuser.com/questions/797687/... и apple.stackexchange.com/questions/333452/... . никто не упоминает, что 10.13.6 и 10.14.0 не работают (последние версии ОС)
johnnyB