OSX/IOS

Cómo enumerar todos los archivos IPSW en los servidores de Apple usando la línea de comando

Obtenga una lista de todos los archivos IPSW disponibles de Apple

Muchos usuarios avanzados prefieren usar archivos de firmware cuando actualizan sus dispositivos iOS a la última versión, y cada vez que aparece una actualización de iOS, publicamos enlaces de descarga directa para las últimas versiones. De vez en cuando recibimos preguntas de usuarios que se preguntan cómo encontrar esos enlaces de archivos, porque están ocultos en los servidores de descarga de Apple, aparentemente ocultos a la vista del público. Bueno, no hay magia en este sentido y se hace fácilmente a través de la línea de comandos con un simple truco que extrae una lista completa de archivos IPSW que están disponibles directamente desde Apple. En su forma más simple, literalmente enumera todo, pero con algunos cambios menores en la sintaxis de comandos puede ordenar por ciertas versiones de iOS o por archivos que coinciden con una pieza de hardware en particular.


Esto probablemente no sea útil para todos, pero para los usuarios a los que les gusta trabajar con IPSW o para los administradores del sistema que necesitan descargar un montón de archivos de firmware diferentes para realizar actualizaciones masivas en un montón de hardware, esto debería ser útil. Para todos los demás, puede ser una lección para demostrar aún más que en OsxDaily somos nerds que pasamos demasiado tiempo pensando en estas cosas.

Si desea probarlos usted mismo, copie todo el bloque de sintaxis y péguelo en la línea de comandos. Los pedidos se ven rotos en la web, pero deberían quedar bien en la línea de comando como una sola línea de comando en una sola línea.

Obtenga una lista de todos los archivos IPSW para todos los dispositivos Apple iOS

La siguiente cadena devuelve una lista bastante limpia de literalmente todos los archivos IPSW para cada iOS, iPad, iPhone, dispositivo iPod que nombre, alojado en los servidores de Apple:

curl http://ax.phobos.apple.com.edgesuite.net/WebObjects/MZStore.woa/wa/com.apple.jingle.appserver.client.MZITunesClientCheck/version | grep ipsw | sort -u | sed 's/<string>//g' | sed 's/</string>//g' | grep -v protected

Para revisar la sintaxis, curl accede a la lista de «versiones» desde la URL del servidor de Apple (esta es la misma URL que recibe iTunes cuando detecta que hay una actualización disponible, por cierto). Luego, esa lista se pasa a través del comando grep para que coincida con «ipsw», pero la reducción «protegida», la clasificación -u asegura que los elementos de la lista devueltos son únicos y, finalmente, los resultados se pasan a través de «sed» a un XML inútil. de los resultados. La ejecución de ese comando arroja todo fuera de la línea de comandos, puede pasar por «más» para que sea más fácil de leer, o tal vez para algunos usuarios es preferible redirigirlo a un archivo de texto como este:

curl http://ax.phobos.apple.com.edgesuite.net/WebObjects/MZStore.woa/wa/com.apple.jingle.appserver.client.MZITunesClientCheck/version | grep ipsw | sort -u | sed 's/<string>//g' | sed 's/</string>//g'| grep -v protected > ~/Desktop/ipswlist.txt

Esto arrojará todo en un archivo de texto llamado «ipswlist.txt» en el escritorio.

Obtenga una lista de todos los archivos de iPhone IPSW en la línea de comando

¿No te preocupan los otros archivos de iOS y solo quieres una lista de IPSW de iPhone? Use grep para iPhone y el resto del comando sigue siendo el mismo:

curl http://ax.phobos.apple.com.edgesuite.net/WebObjects/MZStore.woa/wa/com.apple.jingle.appserver.client.MZITunesClientCheck/version | grep ipsw | grep iPhone | sort -u | sed 's/<string>//g' | sed 's/</string>//g' | grep -v protected

Agregue «> ~ / Desktop / iPhoneIPSW.txt» al final para enviar los resultados a un archivo de texto en el escritorio.

Obtenga una lista de todos los IPSW de iPad disponibles en los servidores de Apple

Similar a usar grep para buscar iPhone, especificar «iPad» solo devolverá archivos de firmware de iPad:

curl http://ax.phobos.apple.com.edgesuite.net/WebObjects/MZStore.woa/wa/com.apple.jingle.appserver.client.MZITunesClientCheck/version | grep ipsw | grep iPad | sort -u | sed 's/<string>//g' | sed 's/</string>//g' | grep -v protected

Como antes, puede enviar esto a un archivo de texto, si lo desea, agregando «> ~ / ruta / a / text.txt» al final.

Obtenga una lista de solo una versión específica de iOS de Apple

Similar a buscar cierto hardware de iOS, también puede devolver ciertas versiones de iOS si lo desea. Por ejemplo, la siguiente sintaxis devolverá solo todos los resultados IPSW que coincidan con iOS 7.0.4, señalados por esa cadena de versión en el segundo grep:

curl http://ax.phobos.apple.com.edgesuite.net/WebObjects/MZStore.woa/wa/com.apple.jingle.appserver.client.MZITunesClientCheck/version | grep ipsw | grep 7.0.4 | sort -u | sed 's/<string>//g' | sed 's/</string>//g' | grep -v protected | awk '{$1=$1}1'

Apple se apresura a eliminar las actualizaciones y, gracias al mecanismo Over-the-Air, la mayoría de las personas notan las nuevas actualizaciones casi tan pronto como están disponibles. Sin embargo, algunos usuarios usan una variante del truco anterior para monitorear las nuevas versiones de iOS, consultando periódicamente cadenas de versiones diferentes que aún no existen en los servidores de Apple. Sin embargo, esto va más allá del alcance de este artículo.

Puede haber formas más limpias y / o mejores de hacer esto, llame a los comentarios si tiene otra solución.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar