私は、現在実行中のすべてのAppPoolsを予定された時間に早朝にリサイクルするPowershellスクリプトをまとめています。今のところ、私はローカルマシン上で動作させようとしているだけで、 "パラメータ '名前'の引数を検証できません。引数はnullです。"Restart-WebAppPoolがforeachを使用して失敗する
# Load IIS module:
Import-Module WebAdministration
# Get pool names:
$poolList = (Get-ChildItem -Path IIS:\AppPools | Where {$_.State -eq
"Started"} | Select -ExpandProperty Name)
# Recycle Web App Pools
foreach ($item in $poolList)
{
Write-Host "Processing" $item -ForegroundColor Green
Invoke-Command -ComputerName localhost -ScriptBlock {Restart-WebAppPool -
Name $item}
}
私はスクリプトを実行すると、各AppPool項目を循環します。私はこの行でそれを参照してください...
Write-Host "Processing" $item -ForegroundColor Green
...しかし、Invoke-Commandはパラメータ 'Name'がnullであると言います。私は何かシンプルなものを見逃しているが、それが何であるか分からないと確信している。
ご協力いただきありがとうございます。 Invoke-Commandコマンドスクリプトブロックにパラメータを渡す
[スクリプト名の変数とのPowershell Invoke-Commandコマンド]の可能な重複(https://stackoverflow.com/questions/11738227/powershell-invoke-command-with-variable-for-script-name ) – TessellatingHeckler