So listen Sie alle IPSW-Dateien von Apple-Servern über die Befehlszeile auf

Viele fortgeschrittene Benutzer bevorzugen Firmware-Dateien, wenn sie ihre iOS-Geräte auf die neueste Version aktualisieren, und jedes Mal, wenn ein iOS-Update herauskommt, veröffentlichen wir direkte Download-Links für die neuesten Versionen. Hin und wieder bekommen wir Fragen von Benutzern, die sich wundern, wie wir diese Datei-Links finden, da sie auf den Download-Servern von Apple versteckt sind, scheinbar aus der öffentlichen Sicht verborgen. Nun, es gibt keine Magie dazu und es ist leicht über die Befehlszeile mit einem einfachen Trick, der eine vollständige Liste von IPSW-Dateien zieht, die direkt von Apple verfügbar sind. In seiner grundlegendsten Form listet es buchstäblich alles auf, aber mit einigen kleinen Änderungen an der Befehlssyntax können Sie nach bestimmten iOS-Versionen oder nach Dateien sortieren, die zu einer bestimmten Hardware passen.



Dies ist wahrscheinlich nicht für alle nützlich, aber für Benutzer, die gerne mit IPSW arbeiten, oder für Systemadministratoren, die eine Reihe verschiedener Firmwaredateien herunterladen müssen, um Massenaktualisierungen auf einer Reihe von Hardware durchzuführen, sollte dies hilfreich sein. Für alle anderen kann es eine Lektion sein, um weiter zu beweisen, dass wir bei osxdaily Nerds sind, die zu viel Zeit damit verbringen, über dieses Zeug nachzudenken.

Wenn Sie diese selbst ausprobieren möchten, kopieren Sie den vollständigen Syntaxblock und fügen Sie ihn in die Befehlszeile ein. Die Befehle sehen im Web auseinander, aber sie sollten in die Befehlszeile als einzelne Befehlszeichenfolge in einer einzelnen Zeile eingefügt werden.

Erhalten Sie eine Liste aller IPSW-Dateien für alle iOS-Geräte

Die folgende Befehlszeichenfolge gibt eine ziemlich saubere Liste von buchstäblich jeder einzelnen IPSW-Datei für jedes iOS-Gerät, iPad, iPhone, iPod, Sie nennen es, von Apple-Servern gehostet:

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///g' | sed 's///g' | grep -v protected

Um die Syntax durchzugehen, greift curl auf die "Versionsliste" von Apples Server-URL zu (das ist die gleiche URL, die von iTunes angetroffen wird, wenn es erkennt, dass ein Update verfügbar ist). Diese Liste wird dann über den grep-Befehl an "ipsw" übergeben, aber discount 'protected', sortiere -u stellt sicher, dass die zurückgegebenen Listeneinträge eindeutig sind, und schließlich werden die Ergebnisse durch 'sed' weitergeleitet, um nutzloses XML zu bereinigen aus den Ergebnissen. Wenn Sie diesen Befehl ausführen, wird einfach alles in die Befehlszeile kopiert, Sie können es durch 'more' weiterleiten, um es lesbarer zu machen, oder vielleicht vorzuziehen, dass einige Benutzer es in eine Textdatei wie folgt umleiten:

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///g' | sed 's///g'| grep -v protected > ~/Desktop/ipswlist.txt

Dadurch wird alles in eine Textdatei mit dem Namen "ipswlist.txt" auf dem Desktop gespeichert.

Rufen Sie eine Liste aller iPhone IPSW-Dateien über die Befehlszeile ab

Interessieren Sie sich nicht für die anderen iOS-Dateien und wollen nur eine Liste von iPhone IPSW? Benutze grep für iPhone und der Rest des Befehls bleibt gleich:

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///g' | sed 's///g' | grep -v protected

Fügen Sie am Ende "> ~ / Desktop / iPhoneIPSW.txt" hinzu, um die Ergebnisse an eine Textdatei auf dem Desktop zu senden.

Rufen Sie eine Liste aller iPad IPSW ab, die auf Apple-Servern verfügbar sind

Ähnlich wie bei der Suche nach einem iPhone nach grep, gibt 'iPad' nur iPad-Firmwaredateien zurück:

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///g' | sed 's///g' | grep -v protected

Wie zuvor können Sie das auch an eine Textdatei senden, indem Sie am Ende "> ~ / path / to / text.txt" hinzufügen.

Erhalte eine Liste von nur einer bestimmten iOS-Version von Apple

Ähnlich wie bei der Suche nach spezifischer iOS-Hardware können Sie bei Bedarf auch bestimmte iOS-Versionen zurückgeben. Die folgende Syntax gibt beispielsweise nur alle IPSW-Ergebnisse zurück, die mit iOS 7.0.4 übereinstimmen, die von dieser Versionszeichenfolge im zweiten grep angegeben werden:

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///g' | sed 's///g' | grep -v protected | awk '{$1=$1}1'

Apple ist schnell dabei, Updates zu veröffentlichen, und aufgrund des Over-the-Air-Mechanismus bemerken die meisten Leute fast sofort neue Updates, sobald sie verfügbar sind. Dennoch verwenden einige Benutzer eine Variante des obigen Tricks, um auf neue iOS-Versionen zu achten, indem sie regelmäßig nach verschiedenen Versionszeichenfolgen suchen, die auf den Servern von Apple noch nicht existieren. Das ist jedoch etwas außerhalb des Rahmens dieses Artikels.

Es kann sauberere und / oder bessere Wege geben, dies zu tun, in den Kommentaren, wenn Sie eine andere Lösung haben.