Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import paramiko
- import sys
- # connect to remote server
- def connect_to_server(server_name, user_name):
- client = paramiko.SSHClient()
- client.set_missing_host_key_policy(paramiko.AutoAddPolicy)
- client.load_system_host_keys()
- client.connect(server_name, username=user_name, password=None)
- return client
- # transfer file from remote host to local machine.
- def copy_remote_file(client, remote_file, local_file):
- sftp = client.open_sftp()
- sftp.get(remote_file, local_file)
- # run command on remote machine.
- def run_remote_command(client, cmd):
- stdin, stdout, stderr = client.exec_command(cmd)
- return stdin, stdout, stderr
- if __name__ == '__main__':
- server = sys.argv[1]
- user = sys.argv[2]
- command = sys.argv[3]
- remotefile = sys.argv[4]
- localfile = sys.argv[5]
- conn = connect_to_server(server, user)
- std_in, std_out, std_err = run_remote_command(conn, command)
- for line in std_err:
- print(' --> ' + line)
- print('copying remote file: %s\n' % remotefile)
- copy_remote_file(conn, remotefile, localfile)
- conn.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement