国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > PowerShell > 正文

Python中調(diào)用PowerShell、遠(yuǎn)程執(zhí)行bat文件實例

2020-05-30 20:18:50
字體:
供稿:網(wǎng)友

python調(diào)用本地powershell方法

1、現(xiàn)在準(zhǔn)備一個簡陋的powershell腳本,功能是測試一個IP列表哪些可以ping通:

代碼如下:
function test_ping($iplist)
{
    foreach ($myip in $iplist)
    {
        $strQuery = "select * from win32_pingstatus where address = '$myip'"
        # 利用 Get-WmiObject 送出 ping 的查詢
        $wmi = Get-WmiObject -query $strQuery
        if ($wmi.statuscode -eq 0)
        {
            return "Pinging`t$myip...`tsuccessful"
        }
        else
        {
            return "Pinging`t$myip...`tErrorCode:" + $wmi.statuscode
        }
    }
}

test_ping args[0]

python簡陋的調(diào)用方法:

代碼如下:
# -*- coding: utf-8 -*-
import subprocess
 
def python_call_powershell(ip):
    try:
        args=[r"powershell",r"D:/jzhou/test_ping.ps1",ip]  #args參數(shù)里的ip是對應(yīng)調(diào)用powershell里的動態(tài)參數(shù)args[0],類似python中的sys.argv[1]
        p=subprocess.Popen(args, stdout=subprocess.PIPE)
        dt=p.stdout.read()
        return dt
    except Exception,e:
        print e
    return False

if __name__=="__main__":
    ip=["1.1.1.1","2.2.2.2","3.3.3.3"]
    print python_call_powershell(ip)

可能會報下面的錯誤(如果服務(wù)器本身開啟了運(yùn)行了powershell策略的權(quán)限可能沒有這個問題):

第二種調(diào)用方法可以解決這個方法

2、調(diào)用時設(shè)置powershell執(zhí)行策略,這種方法一旦將策略設(shè)置好后,后面就通用了,如果需要的話再在powershell腳本最后加上已經(jīng)將策略改回去

代碼如下:
def python_call_powershell(ip):
    try:
        args=[r"C:/WINDOWS/system32/WindowsPowerShell/v1.0/powershell.exe","-ExecutionPolicy","Unrestricted", r"D:/jzhou/test_ping.ps1",ip]
        p=subprocess.Popen(args, stdout=subprocess.PIPE)
        dt=p.stdout.read()
        return dt

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 新化县| 麻城市| 霍山县| 基隆市| 建瓯市| 南漳县| 宁明县| 云南省| 青河县| 台南县| 洛南县| 新建县| 浏阳市| 芒康县| 平塘县| 甘孜县| 固镇县| 无棣县| 锦州市| 郸城县| 吐鲁番市| 武山县| 陵川县| 临安市| 岚皋县| 宝坻区| 平江县| 晋中市| 揭西县| 安龙县| 乌兰浩特市| 阳新县| 郑州市| 闵行区| 桂平市| 巴东县| 扶风县| 云南省| 如皋市| 连州市| 十堰市|