网上淘的代码,直接改了下就可以用,还是挺方便的,测试python使用ssh远程登录然后打包文件
#!/usr/bin/python3 #coding:utf-8 import paramiko ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(hostname="linux服务器IP", port=22, username="root", password="linux服务器密码") cmd = "ls /data/www/;zip -r /data/www/sulao.cn.zip /data/www/sulao.cn/" stdin, stdout, stderr = ssh.exec_command(cmd) result = stdout.read() if not result: result = stderr.read() ssh.close() print(result.decode())
上面代码是远程登录执行命令,下面的是使用sftp上传下载文件
#!/usr/bin/python3 #coding:utf-8 import paramiko transport = paramiko.Transport(('linux服务器IP', 22)) transport.connect(username='root', password='linux服务器密码') sftp = paramiko.SFTPClient.from_transport(transport) sftp.put('test.log', '/data/file.txt') # 将test.log 上传至服务器 /data下并改名为file.txt sftp.get('file.txt', 'local_path') # 将file.txt 下载到本地 local_path transport.close()