我在iOS设备上运行自动化测试。我希望不必总是连接所有设备。所以我想找到所有设备ID,然后只在该设备连接时才开始构建,部署和运行测试的过程。
所以我的问题是,如何通过shell脚本找到所有连接设备的设备uuid?
谢谢!
答案 0 :(得分:43)
如果您安装了 Xcode ,则可以使用乐器来获取所有已知设备。与
instruments -s devices
答案 1 :(得分:17)
@KKendall的回答让我走上了正确的道路。这是一个带有单个sed表达式的版本:
system_profiler SPUSBDataType | sed -n -E -e '/(iPhone|iPad)/,/Serial/s/ *Serial Number: *(.+)/\1/p'
答案 2 :(得分:13)
我发现了一个关于using multiple devices的类似问题,这是我帮助我的答案形式:
#!/bin/sh
i=0
for line in $(system_profiler SPUSBDataType | sed -n -e '/iPad/,/Serial/p' -e '/iPhone/,/Serial/p' | grep "Serial Number:" | awk -F ": " '{print $2}'); do
UDID=${line}
echo $UDID
udid_array[i]=${line}
i=$(($i+1))
done
cnt=${#udid_array[@]}
for ((i=0;i<cnt;i++)); do
echo ${udid_array[i]}
done
答案 3 :(得分:10)
通过brew命令在Mac OS X上安装ideviceinstaller:
brew install ideviceinstaller
然后idevice_id -l
将从终端
答案 4 :(得分:2)
还可以使用ios-deploy:
ios-deploy -c | grep -oE 'Found ([0-9A-Za-z\-]+)' | sed 's/Found //g'
答案 5 :(得分:0)
如果您具有XCode,请转到“窗口”>“设备和模拟器”。在该页面上,所有已连接的设备将与您设备上的其他ID和统计信息一起显示。这也将通过WIFI连接到设备。