python实现远程服务器的操作
前言
pip install paramiko
SSHClient
import paramiko # 进行对paramiko方法下的SSHclient进行实例化 ssh = paramiko.SSHClient() # 保存服务器密钥 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 输入服务器地址,账户名,密码 ssh.connect(hostname='xxxx', port=22,username='root',password='xxxxxx') # 返回了三个数据,第一个是输入命令,第2个是命令返回的结果,第3个是命令错误时返回的结果 stdin, stdout, stderr = ssh.exec_command('pwd;lll') # 返回了当前的路径结果,如果错误则返回为空 print(stdout.read().decode('utf-8')) # 返回错误的执行结果,如果正确则返回为空 print(stderr.read().decode('utf-8'))
import paramiko # 对paramiko方法下的SSHclient进行实例化 ssh = paramiko.SSHClient() # 保存服务器密钥 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 输入服务器地址,账户名,密码 ssh.connect(hostname='xxxxx', port=22, username='root',password='xxxxxx') # 创建sftp客户端 sftp = paramiko.SFTPClient.from_transport(ssh.get_transport()) # 本地路径 aaa = "anjing.txt" # 远程路径 bbb = "/home/anjing/222/anjing.txt" sftp.put(aaa, bbb)
import paramiko # 对paramiko方法下的SSHclient进行实例化 ssh = paramiko.SSHClient() # 保存服务器密钥 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 输入服务器地址,账户名,密码 ssh.connect(hostname='xxxxx', port=22, username='root',password='xxxxxx') # 创建sftp客户端 sftp = paramiko.SFTPClient.from_transport(ssh.get_transport()) # 远程路径 bbb = "/home/anjing/2 # 下载文件 sftp.get(bbb, r'E:\web\anjing_01.txt')