Как я могу найти устройство uuid всех подключенных устройств через командную строку script?
Я запускаю автоматические тесты на устройствах iOS. Я не хочу, чтобы всегда подключались все устройства. Поэтому я хочу найти все идентификатор устройства, а затем только начать процесс построения, развертывания и запуска тестов, если это устройство подключено.
Итак, мой вопрос: как я могу найти устройство uuid всех подключенных устройств через оболочку script?
Спасибо!
Ответы
Ответ 1
Я нашел аналогичный вопрос о с использованием нескольких устройств, вот моя форма ответа, которая помогла мне:
#!/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
Ответ 2
Если у вас установлен Xcode, вы можете использовать Инструменты, чтобы получить все известные устройства. С
instruments -s devices
Ответ 3
Ответ от @KKendall поставил меня на правильный путь. Здесь версия с одним выражением sed:
system_profiler SPUSBDataType | sed -n -E -e '/(iPhone|iPad)/,/Serial/s/ *Serial Number: *(.+)/\1/p'
Ответ 4
установите ideviceinstaller в Mac OS X с помощью команды brew:
brew install ideviceinstaller
тогда idevice_id -l
будет работать с терминалом
Ответ 5
Также ios-deploy можно использовать:
ios-deploy -c | grep -oE 'Found ([0-9A-Za-z\-]+)' | sed 's/Found //g'