Xcode 模擬器儲存空間:執行階段、裝置資料與清理
AskClean 團隊 · 更新於 2026-09-29
先盤點 Xcode 模擬器的執行階段和各裝置資料,再透過 Xcode 或 simctl 刪除不再需要的目標。執行階段可以供多個裝置共用,但每台裝置的應用程式與測試資料各自儲存。先保留需要的狀態,不要直接刪除整個 CoreSimulator 目錄。

先區分執行階段與裝置資料
執行階段是共用的系統映像;裝置另有應用程式、文稿、快取和測試狀態。先查看 xcrun simctl list devices。下方唯讀指令稿測量常見開發目錄並列出模擬器狀態,不刪除檔案、不會要求管理者權限;它不會測量所有系統層級的執行階段位置,還需查看 Xcode 元件管理器。執行前請檢查指令稿原始碼。
文中的選單名稱保留英文寫法;實際名稱可能因介面語言和版本而異。
確認範圍後再刪除裝置
xcrun simctl delete unavailable 會刪除所有被標記為 unavailable 的裝置及其本機資料,只在整個清單都可刪除時使用。裝置無法使用時,其中的資料仍可能重要;相容的 Xcode 或重新安裝執行階段可能讓現有資料重新可存取。需要的資料先匯出;無法匯出或重建的狀態應保留。
仍可用但不再需要的裝置可透過 Xcode 的模擬器管理器單獨刪除;部分版本入口為 Window > Devices and Simulators > Simulators。抹掉內容與設定會保留裝置,刪除則連裝置記錄一起移除;兩者都不能從廢紙簍還原資料。
透過 Xcode 管理執行階段
開啟 Xcode Settings > Components,部分舊版稱為 Platforms。保留測試和重現使用者問題所需的系統版本,只移除不再使用的執行階段。使用元件管理器,不手工拆刪執行階段套件。不要刪除整個 ~/Library/Developer/CoreSimulator 目錄,也不要把陌生快取當成可隨意清理的檔案。
比較用量並驗證保留的裝置
記錄目錄用量和可用磁碟空間,每次處理一類後用同樣方式重新測量。指令稿把 du 用量轉換成可讀單位,不代表實際可用空間的精確增量;執行階段還需結合元件清單確認。隨後啟動保留執行階段下的裝置,執行代表性應用程式或測試並檢查所需狀態。重新安裝執行階段不能還原已刪除裝置的資料,不承諾固定釋放量。
單獨保護 Archives 與符號檔案
Archives 可能包含發行建置和分析崩潰所需的 dSYM,也可能用於重新匯出或重新簽署。保留仍在支援的版本,驗證可用備份後才考慮在 Organizer 刪除本機複本。它們不是模擬器快取。本指南沒有為本次修訂刪除真實裝置或執行階段。
刪除前要確認甚麼
先確認實際路徑、用途和還原方式。下表不是自動刪除清單,也不承諾能釋放固定容量。
| 項目 | 檢查位置 | 刪除後果與保留條件 |
|---|---|---|
| 不可用裝置 | xcrun simctl list devices | 刪除本機應用程式與測試狀態;先確認清單中沒有需要保留的資料。 |
| 可用裝置 | Xcode > Devices and Simulators | 刪除所選裝置的資料,先匯出仍有用途的內容。 |
| 執行階段 | Xcode Settings > Components | 移除系統映像;重新安裝不等於還原已刪除的裝置資料。 |
| CoreSimulator 快取 | ~/Library/Developer/CoreSimulator/Caches | 檢查佔用即可;本指南未驗證手工刪除陌生快取。 |
常見問題
刪除 unavailable 裝置安全嗎?
僅在確認完整清單後執行。這條命令刪除全部不可用裝置及資料,不經過廢紙簍。缺少執行階段不能證明資料可丟棄。
刪完裝置,空間為甚麼仍很大?
命令不刪除已安裝執行階段或可用裝置,需要分別檢查。DerivedData 也屬於不同的建置輸出目錄,刪除它不會移除模擬器執行階段。
參考來源