
Я работаю над скриптом для автоматизации ряда задач, которые я выполняю сотни раз в день, например, создание проектов iOS/Android, но у меня нет большого опыта в написании сценариев оболочки.
В одном из проектов мы используем Titanium, который предоставляет мне CLI-оболочку для собственных команд сборки, поэтому я делаю следующее:
titanium build -p ios -T device
для развертывания на моем устройстве, но перед развертыванием мне нужно выбрать несколько вещей, поэтому я получаю это:
Which developer certificate would you like to use?
/Users/bernardo/Library/Keychains/login.keychain
1) CERTIFICATE 1 (xxx) (expires Oct 16, 2015 4:27:51 pm)
2) CERTIFICATE 2 (xxx) (expires Oct 1, 2015 12:06:30 pm)
Select a certificate by number or name:
Я всегда выбираю одни и те же опции, поэтому вопрос: как создать скрипт, который будет автоматически выбирать опцию 1
каждый раз?
Спасибо!
РЕДАКТИРОВАТЬ:
Поэтому я попытался использовать expect
для выбора опции. Погуглив, я делаю это так:
expect <<EOD heredoc> spawn titanium build -p ios -T device heredoc> expect "Select a certificate by number or name" heredoc> send "1\r" heredoc> EOD
Однако вместо отправки "1" в качестве ввода, он показывает "%". Кто-нибудь знает почему?