Как получить список всех файлов IPSW с серверов Apple с помощью командной строки
Оглавление:
Многие опытные пользователи предпочитают использовать файлы прошивки при обновлении своих устройств iOS до последней версии, и каждый раз, когда выходит обновление iOS, мы публикуем прямые ссылки для скачивания последних версий. Время от времени мы получаем вопросы от пользователей, которые задаются вопросом, как мы находим эти ссылки на файлы, поскольку они спрятаны на серверах загрузки Apple и, по-видимому, скрыты от посторонних глаз.Что ж, в этом нет никакой магии, и это легко сделать через командную строку с помощью простого трюка, который извлекает полный список файлов IPSW, доступных непосредственно из Apple. В самой простой форме он перечисляет буквально все, но с некоторыми незначительными изменениями в синтаксисе команд вы можете сортировать по определенным версиям iOS или по файлам, которые соответствуют определенному аппаратному обеспечению.
Это, скорее всего, будет полезно не всем, но для пользователей, которым нравится работать с IPSW, или для системных администраторов, которым необходимо загрузить кучу разных файлов прошивки для выполнения массовых обновлений на куче оборудования. , это должно быть полезно. Для всех остальных это может стать уроком, который еще раз докажет, что мы в osxdaily — задроты, которые тратят слишком много времени на размышления об этом.
Если вы собираетесь попробовать это самостоятельно, скопируйте полный синтаксический блок и вставьте его в командную строку. Команды выглядят разбитыми в Интернете, но они должны нормально вставляться в командную строку как одна командная строка в одной строке.
Получить список всех файлов IPSW для всех устройств iOS от Apple
Следующая командная строка возвращает довольно чистый список буквально всех файлов IPSW для каждого устройства iOS, iPad, iPhone, iPod и т. д., размещенных на серверах Apple:
curl http://ax.phobos.apple.com.edgesuite.net/WebObjects/MZStore.woa/wa/com.apple.jingle.appserver.client .MZITunesClientCheck/версия | grep ipsw | сортировать -у | sed 's///g' | sed 's///g' | grep -v защищено
Чтобы разобраться в синтаксисе, curl получает доступ к списку «версий» с URL-адреса сервера Apple (кстати, это тот же URL-адрес, который вызывается iTunes, когда обнаруживает доступное обновление). Затем этот список передается через команду grep для соответствия «ipsw», но не учитывает «защищенный», sort -u гарантирует, что возвращаемые элементы списка уникальны, и, наконец, результаты передаются через «sed», чтобы очистить некоторые бесполезные XML из результатов.Выполнение этой команды просто сбрасывает все в командную строку, вы можете передать ее через «больше», чтобы сделать ее более читаемой, или, возможно, для некоторых пользователей предпочтительнее перенаправить ее в текстовый файл, например:
curl http://ax.phobos.apple.com.edgesuite.net/WebObjects/MZStore.woa/wa/com.apple.jingle.appserver.client .MZITunesClientCheck/версия | grep ipsw | сортировать -у | sed 's///g' | sed 's///g'| grep -v protected > ~/Desktop/ipswlist.txt
Все будет сброшено в текстовый файл с именем «ipswlist.txt» на рабочем столе.
Получить список всех файлов iPhone IPSW из командной строки
Не заботитесь о других файлах iOS и просто хотите получить список IPSW для iPhone? Используйте grep для iPhone, остальная часть команды останется прежней:
curl http://ax.phobos.apple.com.edgesuite.net/WebObjects/MZStore.woa/wa/com.apple.jingle.appserver.client .MZITunesClientCheck/версия | grep ipsw | айфон | сортировать -у | sed 's///g' | sed 's///g' | grep -v защищено
Добавьте «> ~/Desktop/iPhoneIPSW.txt» в конец, чтобы отправить результаты в текстовый файл на рабочем столе.
Получить список всех iPad IPSW, доступных на серверах Apple
Подобно использованию grep для поиска iPhone, указание «iPad» вместо этого вернет только файлы прошивки iPad:
curl http://ax.phobos.apple.com.edgesuite.net/WebObjects/MZStore.woa/wa/com.apple.jingle.appserver.client .MZITunesClientCheck/версия | grep ipsw | grep iPad | сортировать -у | sed 's///g' | sed 's///g' | grep -v защищено
Как и раньше, при желании вы можете отправить это в текстовый файл, добавив в конец «> ~/path/to/text.txt».
Получить список только определенной версии iOS от Apple
Подобно поиску определенного оборудования iOS, вы также можете вернуть определенные версии iOS, если хотите. Например, следующий синтаксис вернет только все результаты IPSW, соответствующие iOS 7.0.4, отмеченные этой строкой версии во втором grep:
curl http://ax.phobos.apple.com.edgesuite.net/WebObjects/MZStore.woa/wa/com.apple.jingle.appserver.client .MZITunesClientCheck/версия | grep ipsw | грэп 7.0.4 | сортировать -у | sed 's///g' | sed 's///g' | grep -v защищено | awk '{$1=$1}1'
Apple быстро выпускает обновления, а благодаря беспроводному механизму большинство людей замечают новые обновления почти сразу после их появления. Тем не менее, некоторые пользователи используют вариант описанного выше приема для отслеживания новых выпусков iOS, периодически запрашивая различные строки версий, которых еще нет на серверах Apple. Однако это немного выходит за рамки данной статьи.
Могут быть более чистые и/или лучшие способы сделать это, напишите в комментариях, если у вас есть другое решение.