A questão é mais orientada para objetivos do que particular para as tecnoligias mencionadas, então vou abordar o problema de acordo com meu espírito e espero que ajude. Eu vou usar python.
Re: edição número 1:
Basicamente, parece que você quer analisar ip / addresses de um arquivo e executar uma seqüência de retorno e retorno esperada (como) para cada endereço IP.
Você não quer analisar os endereços IP de um script exceto - mas você quer analisar ipaddresses do arquivo com python e executar o mesmo comando expect para cada endereço IP.
Então, você precisaria escrever o comando expect com o ipaddress sendo uma variável, de forma que para cada ipaddress em seu loop, você atribua um ipaddress diferente para essa variável e execute o comando expect.
Quanto à funcionalidade 'esperar', dê uma olhada na biblioteca 'pexpect': É um módulo python que expõe seus scripts python como funcionalidade. (Veja esta resposta que contém um exemplo e links para outros documentos / exemplos: link ). Vamos detalhar um pouco:
Olhando para o exemplo no link de saída, observe que a sequência de espera começa com ""
child = pexpect.spawn ('algum comando que requer uma senha')
child.expect ('Digite a senha')
child.sendline ('password')
"" "
Você pode facilmente substituir esse argumento de string pelo método pexpect.spawn com pexpect.spawn ('algum comando que requer uma senha que usa ipaddress como opção' + ipaddress_variable)
Então, em Python, eu apenas definiria uma função que toma como argumento a (s) parte (s) da seqüência esperada que será alterada em cada iteração do loop for e escreve a sequência esperada dentro do corpo do loop. função usando os argumentos variáveis.
Assim (este é o pseudo código):
def expect_function (ipaddress_variable):
pexpect.spawn ('algum comando que requer uma senha' + ipaddress_variable)
child.expect ('Enter Password')
child.sendline ('password')
child.expect ..... (aqui é onde você assume e faz o que você precisa fazer na máquina remota)
(Desculpe pela formatação, pré e código não fizeram o que eu esperava)
Com essa função definida, o resto é fácil.
Basta percorrer o ipaddress e chamar a função, como este código do psuedo:
para ipaddress no ipfile:
expect_function (ipaddress)
problema número dois eu também lidaria com python.