Estou trabalhando em um script para automatizar tarefas de preenchimento que faço centenas de vezes por dia, como criar projetos iOS / Android, mas não sou muito experiente em scripts de shell.
Em um dos projetos, estamos usando o Titanium, o que me dá um wrapper da CLI em torno dos comandos de compilação nativos, então eu faço:
titanium build -p ios -T device
para implantá-lo no meu dispositivo, mas antes de implantá-lo, preciso selecionar algumas coisas, então recebo isso:
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:
Eu sempre seleciono as mesmas opções, então a pergunta é: como criar um script que irá selecionar automaticamente a opção 1
todas as vezes?
Obrigado!
EDITAR:
Então, tentei usar expect
para selecionar a opção. Depois de pesquisar, estou fazendo assim:
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
No entanto, em vez de enviar "1" como entrada, ele mostra um "%". Alguém sabe por quê?
Tags shell-script