linux连接window cmd

window 服务需要设置winRM

可以参考:Linux服务器远程连接window服务器并执行cmd命令 运行时候稍微有点错误,按下面为准


winRM 使用端口:http 5985 https 5986
1、在Linux服务器上的处理
  首先需要在Linux中安装python,并且安装pywinm库。安装之前首先需要安装isodate和xmlwitch两个依赖包,再安装pywinrm。下面是安装时用到的命令。
 安装依赖包
  pip install isodate
  pip install xmlwitch
  pip install pywinrm
2、在window服务器上的操作
   1)、用管理员权限打开windows powershell
   2)、首先查看winrm service的运行状态,默认情况是没有开启的;执行命令为空是没有启动。
   winrm enumerate winrm/config/listener

   // 快速在服务端运行winrm  
    winrm quickconfig                   
    // 查看winrm的运行情况  
    winrm e winrm/config/listener     
    // 查看winrm的配置。  这个过程中网络不能是公网的,会报错,根据提示自己搜索改动一下就好
    winrm get winrm/config 
    // 将service中的allowUnencrypted设置为true,允许未加密的通讯  
    winrm set winrm/config/service '@{AllowUnencrypted="true"}'   
    // 将client中的基本身份验证设置为true,允许  
    winrm set winrm/config/client/auth '@{Basic="true"}' 
    // 将client中的allowUnencrypted设置为true,允许未加密的通讯  
    winrm set winrm/config/client '@{AllowUnencrypted="true"}' 
    // 设置主机信任的客户端地址,这里可以填你所在的客户端机器的ip或者主机名  
    winrm set winrm/config/client '@{TrustedHosts="127.0.0.1, localhost, 192.168.3.109"}' 
3、下面是 python 执行cmd命令的源码
import winrm
win = winrm.Session('http://192.168.3.109:5985/wsman',auth=('think','123456')) # 账号密码改成对应的
r = win.run_cmd(
    'C: &'
    'cd C:/Users/think/Desktop &'
    'ls'
)  # 执行cmd命令
print(r.std_out.decode())  # 打印获取到的信息
print(r.std_err)  # 打印错误信息

复制代码

print('hello 测试结束')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值