При использовании Python Exscript необходимо создать регулярное выражение для set_prompt() для коммутатора cisco

Трудно понять, как написать регулярное выражение в python/exscript, чтобы подсказка соответствовала выводу, когда я запускаю "copy run tftp"...

Например, приглашение меняется на...

"Адрес или имя удаленного хоста []?"

тогда к...

"Имя файла назначения [lab-3560.confg]?"

Я знаю, что мне нужно установить set_prompt() перед выполнением команды conn.execute('copy run tftp'), просто не знаю, какой синтаксис (ы)

1 ответ

Есть так много способов сделать это, вот пример:

Так что все, что вам нужно сделать, это проанализировать возвращенное приглашение / текст, вот небольшой пример из этой ссылки:

import pexpect

switch_ip = "10.0.0.1"
switch_un = "user"
switch_pw = "s3cr3t"
switch_port = "Gi2/0/2"
switch_vlan = 300
config = "lab-3560.confg"

child = pexpect.spawn('ssh %s@%s' % (switch_un, switch_ip))
child.logfile = sys.stdout
child.timeout = 4
child.expect('Address or name of remote host []?')
child.sendline(switch_ip)
child.expect('Destination filename [lab-3560.confg]?')
child.sendline(config)
Другие вопросы по тегам