Python远程操作Linux
远程操作linux需要的模块 paramiko
安装模块:pip install paramiko
import paramiko
第一种,链接Linux系统
1、建立连接第一步,创造一个sshclien对象
s = paramiko.SSHClient()
2、建立连接第二步,信任Linux的主机,类似xshell第一次链接的保存信息
s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
3、建立连接第三步,使用connect()链接远程Linux主机
s.connect(
hostname="192.168.10.191",
port=22,
username="root",
password="123456"
)
4、执行Linux命令
#.exec_command("需要执行的命令"):执行命令的方法,命令要写成字符串类型
x = s.exec_command("ls -al")
# 输入 ,输出 ,错误 ,括号内为Linux命令
stdin,stdout,stderr = s.exec_command("ls -al") # stdin = 输入,stdout = 输出,stderr = 错误
5、将命令运行的结果打印出来
print(stdout.read().decode())
第二种,链接Linux的方式,使用端口号链接
#套字节编程---->网络编程
# .Transport(参数):端口号链接Linux系统,参数:是包含ip地址、端口号的元组
t = paramiko.Transport(("192.168.10.191",22))
t.connect(username="root",password="123456")
#SFTPClient.from_transport(参数):sftp客户端方法,
# 参数:指的是一个套字节服务端口--->t
sftp = paramiko.SFTPClient.from_transport(t)
# sftp = paramiko.SFTPClient(s) #创建一个文件传输通道
b1 = "/home/a.txt" #Linux远程文件
b2 = r"D:" #保存到本地的位置
# get(远程文件,本地文件):下载
#sftp.get(x1,x2)
# put(本地文件、远程文件):上传
#sftp.put(x2,x1)
#关闭链接、断开连接
#t.close()
#s.close()