這裏我的windows服務器是win7的,
現在我需要在我的本地電腦上運行python代碼去停止遠程運行的python程序,這裏通過pywinrm這個模塊來操作執行,網上有使用ansible來管理windows服務器,但是也是需要windows服務器上開啟winrm服務,所以在這裏對我而言使用pywinrm就可以滿足我的需求。1.在開啟 windows 的 winrm服務之前,首先得將網絡設置為專用,否者就會出現下面問題 設置的方法很簡單,就是在公用網絡設置為工作網絡即可。。。
2.下載 pywinrm 庫pip install pywinrm
3.在遠端windows服務器上開啟winrm服務
winrm quickconfig
# 查看winrm service listener
winrm e winrm/config/listener
# 為winrm service 配置auth:
winrm set winrm/config/service/auth @{Basic="true"}
為winrm service 配置加密方式為允許非加密:
winrm set winrm/config/service @{AllowUnencrypted="true"}
開啟 winrm 的結果圖如上所示
4.殺掉遠端 windows 上運行的python進程
import winrm
wintest = winrm.Session('http://144.48.66.**:5985/wsman', auth=("賬號名", "密碼"))
# 9068為遠程運行python進程pid
wintest.run_cmd("taskkill /f /pid 9068")
PS:殺掉進程需要進程的pid, 獲取當前運行python程序的pid: os.getpid()
參考:https://blog.csdn.net/together_cz/article/details/86623977
高性能雲服務器
精品線路獨享帶寬,毫秒延遲,年中盛惠 1 折起