Background

  • 在实际项目中,一般使用Linux作为生产服务器,但有时就会出现一些特殊情况,你只能使用windows作为作为服务器,比如说一个用fortran编写的仿真程序,编译环境用的intel的oneAPI,按理说这个编译器是是支持windows、linux和mac平台的,但是不同平台的编译命令还不一样,无法找到相应的编译参数,没办法,只能使用windows作为服务器了。
  • python3中远程控制库中,像远程控制linux服务器的paramiko,同样也有远程控制windows服务器的pywinrm,可以远程执行 cmd、powerSehll命令。不过,需要在被控端 windows 开启 winrm 服务
  • pywinrm官方文档

1、在被控端 windows 开启 winrm 服务

  • 以管理员启动cmd

  • 启动 winrm 服务

如果遇到网络设置问题如下图1,可以win+i,然后按照下图2进行操作设置。

winrm quickconfig -q


  • 查看winrm服务的状态
winrm e winrm/config/listener
# 或者
winrm enumerate winrm/config/listener

  • 为winrm service 配置auth
winrm set winrm/config/service/auth '@{Basic="true"}'

  • 为winrm service 配置加密方式为允许非加密
winrm set winrm/config/service '@{AllowUnencrypted="true"}'

2、在控制端需要安装pywinrm库

pip3 install pywinrm

3、通过 pywinrm 远程执行 cmd、powerSehll命令

import winrmdef win_cmd(cmd: str):"""远程调用 windows 执行命令"""hostname = '110.110.110.110'username = 'user1'password = '123456'wintest = winrm.Session('http://' + hostname + ':5985/wsman', auth=(username, password))res = wintest.run_cmd(cmd)if res.status_code == 0:res = res.std_out.decode().replace('\n', '').replace('\r', '')return {'sta': 200, 'res': res}else:return {'sta': 201, 'res': res.std_err}def main():"""主函数"""cmd = 'python3 -V'print(win_cmd(cmd))if __name__ == '__main__':main()

python3通过winrm远程执行windows服务器dos命令相关推荐

  1. 服务器登陆之后一直转无法显示桌面,如何解决远程登录Windows服务器无法显示桌面的问题?...

    概述 本文主要介绍解决远程登录Windows服务器无法显示桌面问题的方法. 详细信息 远程登录Windows登录服务器后,不显示桌面.使用 Ctrl+Alt+Delete 键调出任务管理器,在任务管理 ...

  2. 阿里云国际版无法远程连接Windows服务器的解决方法

    免责声明:本文档可能包含第三方产品信息,该信息仅供参考.阿里云对第三方产品的性能.可靠性以及操作可能带来的潜在影响,不做任何暗示或其他形式的承诺. 概述 下面来和87cloud一起了解阿里云国际版无法 ...

  3. 远程连接Windows服务器

    最近有小伙伴在群里买了云服务器 问题引出 大哥,忙吗?为什么连不上, 问清楚服务器类型之后就开始帮助他 开始正文 先给大家看一下连接成功是啥样 开始正文 远程连接Windows服务器 您可以通过 轻量 ...

  4. python如何连接自己电脑服务器_Python远程连接windows服务器并上传数据

    [芝麻IP代理]大数据时代下,我们对于Python的应用真的是淋漓尽致,第一次玩服务器,电脑端远程连接能连上,可SSH却始终不行,后来才发现,这根本不是一种东西,SSH得在服务器上搭建SSH seve ...

  5. mstsc远程登录windows服务器

    mstsc远程登录windows服务器 一.mstsc远程登录的流程 在电脑上输入win+r键,运行mstsc 在计算机处输入windows服务器的公网IP地址 输入登录服务器的账号名和密码,默认的远 ...

  6. 【Android】手机远程登录Windows服务器(使用Rd Client)

    概述 本文主要介绍:如何在Android端(手机)利用微软Remote Desktop Client应用远程连接Windows服务器. Remote Desktop Client是微软旗下一款非常实用 ...

  7. Windows 常用dos命令大全

    regedit 可以打开注册表编缉器. msconfig 可以打开系统配置文件(在 9x 系统) sfc 可以打开系统文件检查器 scandisk 扫描磁盘(用于 9x) ping 网络测试 scan ...

  8. windows下DOS命令关闭占用的端口

    windows下DOS命令关闭占用的端口 经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口,很多人都比较头疼,下面就介绍一种非常简单的方法,希望对大家有用. ...

  9. 如何使用 Java 中执行 Windows 的 CMD 命令

    如何使用 Java 中执行 Windows 的 CMD 命令 核心代码 完整代码   在 CMD 中执行 BAT 脚本对用户不友好,而且有安全隐患,因此笔者编写了一些可以在 Java 中执行 Wind ...

最新文章

  1. phpexcel设置AAA单元格,兼容大于702列数据
  2. SpringBoot下的模板技术Thymeleaf详解
  3. 面向对象的4个基本特征
  4. linux 常用命令03--修改文件的权限与归属
  5. 研究:多感官教学增强记忆 学习效率事半功倍
  6. 超简单:解析 yml 类型(application.yml)配置文件 、springboot 工程读取 yml 文件中的值
  7. 一则故事表达:并发,并行,同步,异步,线程,多线程
  8. python 计算数字位数_Python 统计位数为偶数的数字的代码
  9. python初学者怎么入门-python怎么入门啊?
  10. windows环境tomcat8配置Solr5.5.1
  11. Linux epoll模型详解及源码分析
  12. ET代理_切换ip软件网络功能。
  13. 怎么压缩图片大小?这些压缩方法值得收藏
  14. 【Paper】Neural Machine Translation by Jointly Learning to Align and Translate
  15. 漫谈京东(一)——自营手机类商品数据分析
  16. Concurrency-with-Modern-Cpp学习笔记 - 线程
  17. 雷锋网的那些段段(一)。
  18. 实效程序员快速参考指南
  19. 回老家发展VS在北京发展—一个北漂族的心声
  20. 卡巴斯基U盘插入扫描策略

热门文章

  1. Linux Ubuntu Kugou 酷狗音乐的安装
  2. 农信银新版系统使用手册-个人网银-配置项(控件类)IE浏览器
  3. android6.0最新补丁,谷歌发布安卓补丁修复漏洞 支持6.0之后所有版本
  4. CITA v0.18 新增「基于 Rust 语言的国密算法库」新特性
  5. Vue项目与Nginx反向代理
  6. 未注册老域名扫描软件-免费未注册老域名挖掘
  7. 如何针对企业产品进行有效分析,看大佬用SQL分析淘宝用户行为
  8. 2010-2011中国嵌入式开发从业人员调查报告
  9. Windows10 Intel SGX 环境配置
  10. python创建和显示任意行数的杨辉三角/帕斯卡三角(函数)