情景:
局域网内一台pc或服务器(windows或Linux)上有一Python脚本,如何执行它?
常用的两种:远程桌面和xshell远程连接


那假如想要不通过以上两种方式的前提下执行它,可行么?
怎么办?


答案是肯定的


# -*-coding:utf-8
# author:lihaizhen
# date:
# description:


import paramiko,time

# 创建SSH对象
ssh = paramiko.SSHClient()

# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

# 连接服务器
ssh.connect(hostname='xx.xx.xx.xx', port=22, username='', password='')


# 执行命令
stdin, stdout, stderr = ssh.exec_command('python /xx/xx/xx.py')

# 获取命令结果
result = stdout.read().decode('utf8')
print(result)  # 如果有输出的话

# 关闭连接
ssh.close()

如果需要的话,你甚至可以打包成windows定时任务,来定时执行

(为何要多此一举?xshell不方便么,当然不是,这是真对业务部门(非IT人事)的需求搞出来的玩意儿)

Logo

更多推荐