この記事は3年以上前に書かれた記事で内容が古い可能性があります
pexpectで処理自動化する
2017-09-30
他の機器にsshしてどうこうする処理を自動化したくてpexpectで書いてみた。for文で回したいときなど便利。
linuxではない機器でもいじれるのが良いと思った。
#!/usr/bin/python2.6 #coding: utf-8 import pexpect import subprocess def pex(foo, di_l, in_l): print(in_l) foo.expect(di_l) foo.sendline(in_l) if __name__ == "__main__": foo = pexpect.spawn('ssh -l yoshi 192.168.0.1') pex(foo, '.*password:', 'password') pex(foo, '.*>', 'enable') pex(foo, '.*#', 'configure terminal') pex(foo, '.*#', 'なにか入れたいコマンド') pex(foo, '.*#', 'なにか入れたいコマンド') pex(foo, '.*#', 'exit') pex(foo, '.*#', 'exit') foo.interact()