Python Paramiko Ожидайте не ловить подсказку - PullRequest
0 голосов
/ 14 сентября 2018

Я пытаюсь использовать paramiko_expect для автоматизации процесса, который включает несколько вводов пароля.Вот скрипт:

pass_prompt = '*password for*'


with SSHClientInteraction(client, display=True) as interact:

    interact.send('cd')
    interact.send('dzdo su - ALTUSER')
    interact.expect(pass_prompt)
    interact.send('PASSWORD')

client.close

А вот вывод:

cd
dzdo su - ALTUSER
[user@SERVER ~]$ cd
[user@SERVER ~]$ dzdo su - ALTUSER
[dzdo] password for USER:

Скрипт не перехватывает ожидаемый вывод, я пробовал несколько подстановочных знаков.Сценарий запустит все строки, а затем в конце запросит пароль.

1 Ответ

0 голосов
/ 14 сентября 2018

Решено:

pass_prompt = '.*password for.*'

Требуется подстановочный знак. * В моей версии bash.

...