Sem saber mais detalhes, é difícil dizer. Mas isso parece uma tarefa mais adequada para um script expect
:
Expect is a program that "talks" to other interactive programs according to a script. Following the script, Expect knows what can be expected from a program and what the correct response should be. An interpreted language provides branching and high-level control structures to direct the dialogue. In addition, the user can take control and interact directly when desired, afterward returning control to the script.
Existem muitos sites que provam exemplos de scripts em expect
, como este e este . Mas o conceito é bem simples. Aqui está um exemplo básico de "hello world" de uma dessas páginas de exemplo:
#!/usr/bin/expect
set timeout 10
expect "hello"
send "world"
Isso basicamente define o tempo limite do script para 10 segundos, é expect
ing a palavra "hello" a ser inserida e então ele envia a palavra "world" de volta.
Embrulhe esse conceito básico em alguma lógica de script Bash e talvez isso ajude você a atingir sua meta de criar um processo de transferência automatizada de arquivos usando o método de autenticação desafio-resposta.