使用python和paramiko在交互式远程shell中运行commnad
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用python和paramiko在交互式远程shell中运行commnad相关的知识,希望对你有一定的参考价值。
It is necessary on occasion to execute a command in interactive shell. (I needed to to get access to some env vars... ) While there are many way to accomplish this I opted to run my cmd in interactive mode.To do so I had to write this little wrapper snippet and figured it might be useful for someone else.
def interExecute(host,port,username,password,cmd): """Execute the given commands in an interactive shell.""" transport = paramiko.Transport((host, port)) transport.connect(username = username, password = password) chan = paramiko.transport.open_session() chan.setblocking(0) chan.invoke_shell() out = '' chan.send(cmd+' ') tCheck = 0 # Wait for it..... while not chan.recv_ready(): time.sleep(10) tCheck+=1 if tCheck >= 6: print 'time out'#TODO: add exeption here return False out = chan.recv(1024) return out
以上是关于使用python和paramiko在交互式远程shell中运行commnad的主要内容,如果未能解决你的问题,请参考以下文章