可在mac终端用xcrun simctl boot命令直接启动ios模拟器,支持设备名、uuid或一键提取uuid三种方式,前提是已通过xcode安装对应ios运行时并确保simulator.app路径正确。

在Mac终端中直接启动iOS模拟器,跳过Xcode图形界面,适用于自动化脚本、CI/CD集成或快速复现调试环境。
确认模拟器设备已存在
执行 xcrun simctl list devices,查看输出中是否包含类似 iPhone 15 Pro (iOS 18.2) (4A3B7C8D-EF9G-1H2I-3J4K-5L6M7N8O9P0Q) 的条目。若列表为空或只有“Unavailable”设备,说明尚未安装对应运行时——需先打开Xcode → Preferences → Components → 下载所需iOS版本(如iOS 18.2)。
这一步不可跳过。没有已注册的设备,后续所有命令都会报错 Could not find a device with udid 'xxx'。
方法一:用设备名称启动(推荐新手)
执行 xcrun simctl boot "iPhone 15 Pro (iOS 18.2)"。名称必须与 simctl list devices 输出中引号内的完整字符串完全一致,包括空格和括号。
注意:名称含空格时必须用英文双引号包裹,否则shell会把空格当作参数分隔符,命令直接失败。
启动成功后,Simulator.app 窗口会自动弹出并加载该设备。若未出现,请检查 macOS 是否已启用开发者模式(系统设置 → 隐私与安全性 → 开发者模式 → 输入密码启用并重启)。
方法二:用UUID启动(适合脚本固化)
第一步:从 xcrun simctl list devices 输出中复制目标设备的UUID(32位十六进制+连字符格式,如 4A3B7C8D-EF9G-1H2I-3J4K-5L6M7N8O9P0Q)。
第二步:执行 xcrun simctl boot 4A3B7C8D-EF9G-1H2I-3J4K-5L6M7N8O9P0Q。
UUID方式不依赖设备显示名称,避免因本地化语言(如中文系统显示“iPhone 15 Pro”被译为“iPhone 15 Pro”以外的文本)导致匹配失败。但UUID每次重装运行时可能变化,需在脚本中动态获取。
方法三:一键启动并打开指定设备(无需提前知道UUID)
执行 open -a Simulator --args -CurrentDeviceUDID $(xcrun simctl list devices | grep "iPhone 15 Pro (iOS 18.2)" | sed -E 's/.*\(([^)]+)\).*/\1/')。
这条命令组合了三个动作:列出设备→匹配行→提取UUID→传给Simulator.app启动参数。它绕过了 simctl boot 的状态管理逻辑,直接唤起GUI界面并定位到目标设备,适合临时调试。
【关键前提】 必须确保 Simulator.app 已安装在 /Applications/Xcode.app/Contents/Developer/Applications/Simulator.app 路径下;若Xcode安装在非默认路径(如自定义命名的Xcode-beta.app),需手动替换命令中的路径。











