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= ...
随机推荐
- es索引数据复制并增加条件和修改目标数据值
es操作同一个索引里数据的复制语法 复制数据: POST _reindex { "source": { "index": "source_index& ...
- vscode 花括号 突出连接线 bracket 两个设置点 (括号标识符)
vscode 花括号 突出连接线 bracket 两个设置点 外观 设置 设置里面搜索 bracket Editor - Guides: Highlight Active Bracket Pair E ...
- Python下使用串口发送十六进制数据
import serial from time import sleep def recv(serial): while True: data = serial.read_all() if data ...
- 后端基础SQL—数据库简介与SQL语法
数据库简介与SQL语法 1.数据库简介 2.数据库结构 3.SQL语句 4.SQL基本语法 5.MySQL基础查询语句 6.高级查询与子查询 7.渗透测试常用函数 8.判断闭合类型 一.数据库简介 数 ...
- 安装swagger过程及遇到问题
参考:欢迎点击原文:https://www.cnblogs.com/liconglong/p/11477401.html(主要) https://blog.csdn.net/liangjiabao55 ...
- enum class 用法
enum的主要缺点 1.类型不明确 首先,无法指定数据类型,导致我们无法明确枚举类型所占的内存大小.这种麻烦在结构体当中尤为突出,特别是当我们需要内存对齐和填充处理的时候. #include < ...
- JNI中AttachCurrentThread和DetachCurrentThread的问题
在<Java与CC++交互JNI编程>中有讲过AttachCurrentThread和DetachCurrentThread的使用. 我们知道在jni中我们可以使用pthread或者std ...
- spring boot2集成api文档工具swagger-ui(下)
接上篇 swaggerUI提供了可视化界面帮助我们管理服务的访问路口,这就需要我们在代码中规范我们的书写格式.并且在swagger的界面上还能够模拟浏览器对服务进行访问. 接口总览 创建POST接口 ...
- APP备案通知
截至2024年4月1日前,所以已上市APP均需备案,未备案的可以登陆云擎官网进行备案. 关于工信部开展在中华人民共和国境内从事互联网信息服务的APP主办者,应当依法履行备案手续,未履行备案手续的,不得 ...
- Circle Loss:从统一的相似性对的优化角度进行深度特征学习 | CVPR 2020 Oral
论文提出了Circle loss,不仅能够对类内优化和类间优化进行单独地处理,还能根据不同的相似度值调整对应的梯度.总体而言,Circle loss更灵活,而且优化目标更明确,在多个实验上都有较好的表 ...