Powershell檢測並啟動多個服務

2021-09-20 17:27:22 字數 1032 閱讀 2546

# 恢復powershell的預設執行策略,預設不允許執行任何指令碼

# set-executionpolicy   default  -force

#設定powershell的執行策略為,可以執行任何指令碼

# set-executionpolicy  unrestricted  -force

#定義乙個傳送郵件的函式sendemail(收件人位址,發件人位址,郵件伺服器,郵件伺服器端口,郵件伺服器登陸密碼,郵件標題,郵件正文)

function sendemail([string]$to,[string]$from,[string]$smtpserver,[int]$port,[string]$password,[string]$subjet,[string]$body )

#呼叫函式測試

#sendemail "收件人email位址" "發件人email位址" "smtp.163.com" 25 "密碼" "郵件標題" "郵件正文"

#檢查服務狀態的函式,如果有乙個或多個服務停止則返回false,引數是服務的名字,可以指定多個名字用空格隔開

function checkservice() )

else

}#呼叫函式測試

#checkservice xlserviceplatform themes

#啟動服務的函式,引數為需要檢測並啟動的服務名稱,可以指定多個引數,用空格分隔

#功能為迴圈檢查傳遞進來的每乙個服務,如有服務的狀態不是「running」,則啟動這個服務

function startservice()

}#呼叫函式測試

#startservice xlserviceplatform themes

#檢測伺服器服務

#定義要檢查的服務名稱,注意不是顯示名稱

$service_name= "xlserviceplatform","themes"

$flag=0

do#檢測間隔,時間單位為秒。

sleep(10)

}while($flag -le 3 )  #迴圈退出條件

使用PowerShell 修改DNS並加入域中

執行環境 windows server 2012 r2 此powershell指令碼為自動修改本機dns並加入到域中 但有的時候會提示 本地計算機當前不是域的一部分。請重新執行指令碼!錯誤,如遇到該錯誤可按照提示重新執行指令碼 若多次執行後還是報錯,錯誤原因是指令碼將本機加入到域中,但是域控中未出現...

Powershell 檢測裝置管理器

下圖為其中乙個裝置的詳細資訊 name存在且 pnpclass 為 null 的裝置為其他裝置 other devices status 為 error 的裝置為未正常工作裝置 yellow bang pnpclass 表示裝置所屬類 通過比較資料的改變來檢測裝置的變化 function catch...

PowerShell 批量禁用AD賬號並記錄

因原始版本包含ad組織資訊,以下為刪改版本,僅做個人備忘 write host name.csv 存放要禁用的賬戶 中文名 log.txt 詳細記錄了針對使用者執行的每乙個執行操作 改description,刪除每乙個組,移動等等 請認真閱讀黃色警告,對其中忽略處理的使用者,進行手動處理 pause...