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()
- out = ''
- tCheck = 0
- # Wait for it.....
- while not chan.recv_ready():
- if tCheck >= 6:
- print 'time out'#TODO: add exeption here
- return False
- out = chan.recv(1024)
- return out
CommentsSubscribe to comments
You need to login to post a comment.