python 远程windows系统执行cmd命令
如果你的服务器是windows系统,不想一台一台mstsc远程到桌面上去操作,python是有模块可以远程处理的:winrm
pip install pywinrm 安装模块即可
windows系统服务器需要开启 winrm 服务
具体开启方法:
cmd命令行输入:
# 开启服务
1.winrm quickconfig
会有两次确认 # 查看监听端口等信息
2.winrm e winrm/config/listener # 授权
3.winrm set winrm/config/service/auth @{Basic="true"} # 不加密模式
4.winrm set winrm/config/service @{AllowUnencrypted="true"}
上面的cmd命令可以写成一个.bat文件,在服务器上直接执行即可:
bat命令:
echo y| winrm quickconfig
echo y| winrm quickconfig
winrm e winrm/config/listener
winrm set winrm/config/service/auth @{Basic="true"}
winrm set winrm/config/service @{AllowUnencrypted="true"}
因为有两次手动确认的过程,写了两个echo y|解决。
以上准备工作做好就可以在python里操作了
举个例子:
1 # -*- coding = utf-8 -*-
2 # ------------------------------
3 # @time: 2020/9/1 17:54
4 # @Author: drew_gg
5 # @File: mstsc_windows.py
6 # @Software: api_locust
7 # ------------------------------
8
9 import winrm
10
11 con = winrm.Session('http://49.37.168.224:5985/wsman', auth=("administrator", "23423423***"))
12 # 杀掉进程
13 con.run_cmd("taskkill /f /pid 6748")
“:5985/wsman”每台服务器上应该都是固定相同的。
关于winrm再扩展一些知识:
执行以下命令能够以每组多达50个实例的速度获取实例
winrm set winrm/config @{MaxBatchItems="50"}
通过增大分配的最大封包大小和超时设置,提高性能
winrm set winrm/config @{MaxEnvelopeSizekb="150"}
winrm set winrm/config @{MaxTimeoutms ="60000"}
获取当前winRM配置
winrm g winrm/config
TrustedHosts 是一个数组,用于指定可信的远程计算机的列表;同一工作组中的其他计算机或不同域中的计算机均应添加到此列表中;执行以下命令可将所有计算机都纳入TrustedHosts
winrm s winrm/config/Client @{TrustedHosts="*"}
将客户端计算机设置为使用基本身份验证
winrm s winrm/config/Client/Auth @{Basic="true"}
python 远程windows系统执行cmd命令的更多相关文章
- Java执行cmd命令、bat脚本、linux命令,shell脚本等
1.Windows下执行cmd命令 如复制 D:\tmp\my.txt 到D:\tmp\my_by_only_cmd.txt 现文件如图示: 执行代码: private static void run ...
- 在windows下使用cmd命令行对java文件进行编译和执行
windows下利用cmd命令行可以调用jdk里的javac.exe和java.exe对java文件进行编译和执行,前提是jdk已成功安装并正确配置相关环境变量 相关配置链接:java基础学习总结—— ...
- Windows下的cmd命令行中设置环境编码
我们都知道,Windows下的cmd命令行默认编码是Windows系统的编码,就是ANSI编码或者说是GBK编码的,这样我们编写的很多应用比如php编写utf-8编码的应用在命令行下面运行时都会出现乱 ...
- 如何使用Java执行cmd命令
用JAVA代码实现执行CMD命令的方法! Runtime rt = Runtime.getRuntime(); Process p = rt.exec(String[] cmdarray); ...
- Atitit.执行cmd 命令行 php
Atitit.执行cmd 命令行 php 1. 执行cmd 命令行,调用系统命令的基础 1 1.1. 实际执行模式 1 1.2. 空格的问题 1 1.3. 中文路径的问题,程序文件读取编码设置 1 1 ...
- 在Windows系统下用命令把应用程序添加到系统服务
在Windows系统下用命令把应用程序添加到系统服务,使用SC命令. 加入服务格式如下:sc create ServiceName binPath= 程序路径 start= auto(等号后面的空格是 ...
- 如何在windows系统自带命令查看硬件信息?
如何在windows系统自带命令查看硬件信息? 对于在windows下查看系统信息大家一定不陌生了,我现在说几个最常用的方法,对命令感兴趣的朋友看看,(给菜鸟看的,老手就不要笑话我了,大家都是从那个时 ...
- [转]Delphi执行CMD命令
今天看到有人在问用代码执行CMD命令的问题,就总结一下用法,也算做个备忘. Delphi中,执行命令或者运行一个程序有2个函数,一个是winexec,一个是shellexecute.这两个大家应该都见 ...
- Windows 系统采用批处理命令修改 ip 地址
Windows 系统采用批处理命令修改 ip 地址 :: 设置IP地址 set /p choice=请选择设置类型(1:外网IP / 2:内网IP / 3:自动获取IP): echo. if &quo ...
- python 利用python的subprocess模块执行外部命令,获取返回值
有时执行dos命令需要保存返回值 需要导入库subprocess import subprocess p = subprocess.Popen('ping www.baidu.com', shell= ...
随机推荐
- 精贴总结 - 万字长文带你入门Istio
原文 - 万字长文带你入门Istio 一.个人看法 背景:以docker+k8s普及,支持快速部署,通过k8s允许统一管理 解决:1)设计分布式系统,导致开发难度提高:2)统一多语言的服务治理方案 目 ...
- nowrap - table td 列 宽度 不被挤 - 大表格制作
nowrap - table td 列 宽度 不被挤 - 大表格制作 表格前几列 设置完宽度,会被右侧动态数据挤没有宽度,加上nowrap,就保证宽度了
- kettle教程--通过配置文件同步所需要的列数据
kettle教程--通过配置文件同步所需要的列数据 欢迎关注博主公众号「Java大师」, 专注于分享Java领域干货文章, 关注回复「kettle」, 免费领取全网最热的kettle实战视频教程 ht ...
- C++ 萃取机 Iterator Traits
Iterator Traits 萃取出 Iterator 的性质:迭代器种类.迭代器所指数据类型.迭代器距离类型.迭代器所指数据引用.迭代器所指数据指针.根据不同的迭代器种类可以采取不同的算法策略.但 ...
- 文心一言 VS 讯飞星火 VS chatgpt (216)-- 算法导论16.2 3题
三.假定在 0-1 背包问题中,商品的重量递增序与价值递减序完全一样.设计一个高效算法求此背包问题的变形的最优解,证明你的算法是正确的.如果要写代码,请用go语言. 文心一言: 在0-1背包问题中,如 ...
- Adapter分组封装
YCGroupAdapter 01.前沿说明 1.1 案例展示效果 1.2 该库功能和优势 1.3 相关类介绍说明 02.如何使用 2.1 如何引入 2.2 最简单使用 2.3 使用建议 03.常用a ...
- 记录--Object.assign 这算是深拷贝吗
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 在JavaScript中,Object.assign() 是一个用于合并对象属性的常见方法.然而,对于许多开发者来说,关于它是否执行深拷贝 ...
- JavaScript知识总结 异步编程篇
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 1. 异步编程的实现方式? JavaScript中的异步机制可以分为以下几种: 回调函数 的方式,使用回调函数的方式有一个缺点是,多个回调 ...
- 记录--你可能忽略的10种JavaScript快乐写法
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前言 代码的简洁.美感.可读性等等也许不影响程序的执行,但是却对人(开发者)的影响非常之大,甚至可以说是影响开发者幸福感的重要因素之一: ...
- 原生js实现table的增加删除
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...