python scp到远端机器

class RemoteShell:
    def __init__(self, host, user, pwd):
        self.host = host
        self.user = user
        self.pwd = pwd

    def put(self, local_path, remote_path):
        scp_put = '''
        spawn scp %s %s@%s:%s
        expect "(yes/no)?" {
        send "yes
"
        expect "password:"
        send "%s
"
        } "password:" {send "%s
"}
        expect eof
        exit'''
        os.system("echo '%s' > scp_put.cmd" % (
                    scp_put % (os.path.expanduser(local_path), self.user, self.host, remote_path, self.pwd, self.pwd)))
        os.system('expect scp_put.cmd')
        os.system('rm scp_put.cmd')

直接调用就可以

原文地址:https://www.cnblogs.com/snailon/p/12522658.html