Cara Daftar Semua File IPSW dari Server Apple Menggunakan Command Line

Banyak pengguna tingkat lanjut lebih suka menggunakan file firmware ketika memperbarui perangkat iOS mereka ke versi terbaru, dan setiap kali pembaruan iOS keluar kami memposting tautan unduhan langsung untuk versi terbaru. Terkadang kami mendapatkan pertanyaan dari pengguna yang bertanya-tanya bagaimana kami menemukan tautan file tersebut, karena file tersebut tersimpan di server unduhan Apple, yang tampaknya tersembunyi dari pandangan publik. Yah, tidak ada keajaiban untuk ini dan itu mudah dilakukan melalui baris perintah dengan trik sederhana yang menarik daftar lengkap file IPSW yang tersedia langsung dari Apple. Pada bentuk yang paling dasar, daftar ini secara harfiah semuanya, tetapi dengan beberapa perubahan kecil pada sintaks perintah, Anda dapat mengurutkan untuk versi iOS tertentu atau untuk file yang cocok dengan perangkat keras tertentu.



Ini mungkin tidak akan berguna bagi semua orang, tetapi untuk pengguna yang suka bekerja dengan IPSW, atau untuk administrator sistem yang perlu mengunduh banyak file firmware yang berbeda untuk melakukan pembaruan massal pada banyak perangkat keras, ini akan membantu. Bagi orang lain, ini bisa menjadi pelajaran untuk membuktikan lebih lanjut bahwa kami di kutu buku adalah kutu buku yang menghabiskan terlalu banyak waktu untuk memikirkan hal ini.

Jika Anda akan mencoba ini sendiri, salin blok sintaks lengkap dan tempelkan ke baris perintah. Perintah-perintah tampak rusak terpisah di web, tetapi mereka harus menempel baik ke dalam baris perintah sebagai string perintah tunggal pada satu baris.

Dapatkan Daftar Semua File IPSW untuk Semua Perangkat iOS

String perintah berikut mengembalikan daftar yang cukup bersih secara harfiah setiap file IPSW tunggal untuk setiap perangkat iOS, iPad, iPhone, iPod, Anda nama itu, di-host oleh server 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///g' | sed 's///g' | grep -v protected

Untuk menelusuri sintaks, curl mengakses daftar "versi" dari URL server Apple (ini adalah URL yang sama yang dipukul oleh iTunes ketika mendeteksi pembaruan tersedia, by the way). Daftar itu kemudian diteruskan melalui perintah grep untuk dicocokkan dengan "ipsw" tetapi diskon 'protected', sort -u memastikan item daftar yang dikembalikan adalah unik, dan akhirnya, hasilnya dilewatkan melalui 'sed' untuk membersihkan beberapa XML yang tidak berguna. dari hasil. Melaksanakan perintah itu hanya membuang semuanya ke baris perintah, Anda dapat meneruskannya melalui 'lebih banyak' untuk membuatnya lebih mudah dibaca, atau mungkin lebih baik bagi sebagian pengguna untuk mengalihkannya ke file teks seperti ini:

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

Itu akan membuang semuanya ke dalam sebuah file teks bernama 'ipswlist.txt' di desktop.

Dapatkan daftar semua file IPSW iPhone dari baris perintah

Tidak peduli dengan file iOS lainnya dan hanya ingin daftar IPSW iPhone? Gunakan grep untuk iPhone dan sisanya dari perintah tetap sama:

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

Tambahkan "> ~ / Desktop / iPhoneIPSW.txt" ke ujung untuk mengirim hasilnya ke file teks di desktop.

Ambil daftar semua iPad IPSW yang tersedia di Server Apple

Mirip dengan menggunakan grep untuk mencari iPhone, menentukan 'iPad' hanya akan mengembalikan file firmware iPad sebagai gantinya:

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

Seperti sebelumnya, Anda dapat mengirimnya ke file teks jika diinginkan dengan menambahkan "> ~ / path / ke / text.txt" sampai akhir.

Dapatkan daftar hanya versi iOS tertentu dari Apple

Serupa dengan mencari perangkat keras iOS tertentu, Anda juga dapat mengembalikan versi iOS tertentu jika diinginkan. Sebagai contoh, sintaks berikut hanya akan mengembalikan semua hasil IPSW yang cocok dengan iOS 7.0.4, yang dicatat oleh string versi tersebut dalam grep kedua:

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 cepat dengan mendorong pembaruan dan karena mekanisme Over-the-Air kebanyakan orang melihat pembaruan baru hampir segera ketika mereka menjadi tersedia. Meskipun demikian, beberapa pengguna menggunakan variasi trik di atas untuk memantau rilis iOS baru dengan secara berkala meminta berbagai string versi yang belum ada di server Apple. Itu sedikit di luar cakupan artikel ini.

Mungkin ada cara yang lebih bersih dan / atau lebih baik untuk melakukan ini, berbunyi dalam komentar jika Anda memiliki solusi lain.