rushi
rushi

Reputation: 535

how to use paramiko to execute remote commands

I wanted to compress a folder on a remote namchine.For that i am using paramiko. But i don't know how to do that using paramiko. Any suggestions??

This is my code:

dpath = '/var/mysql/5.1/mysql.zip'    
port = 22    
host = '10.88.36.7'    
transport = paramiko.Transport((host, port))    
transport.connect(username=suser, password=spass)    
channel = transport.open_channel(kind="session")    
channel.exec_command('zip -r /var/db/mysql /var/db/mysql')    
transport.close()

whats wrong in this??

Upvotes: 1

Views: 6913

Answers (1)

ohe
ohe

Reputation: 3673

After

channel.exec_command(...)

You have to wait the termination of the command with:

while not channel.exit_status_ready()
    ... wait ... ( you can read the output with channel.recv, or sleep a bit)

Furthermore, you're zip command is weird... don't you want to say

zip -r /var/db/mysql.zip /var/db/mysql

Upvotes: 3

Related Questions