Powershell远程在IIS:\AppPools查找上返回误报

biswetbf  于 2022-12-29  发布在  Shell
关注(0)|答案(3)|浏览(96)

无论为$appPoolName输入什么值,在发送到远程计算机时,Test-Path始终返回true,即使不存在此类池也是如此。在这些计算机上的powershell中本地运行时,将返回正确的结果。PSRemote已验证为在目标计算机上启用。

$appPoolName = 'Abc123'
$scriptBlock = {
    Import-Module WebAdministration
    if (Test-Path IIS:\AppPools\$appPoolName) {
        Write-Host "Already installed."
    } else {
        Write-Host "Installing..."
        $appPool = New-Item –Path IIS:\AppPools\$using:appPoolName
        $appPool | Set-ItemProperty -Name managedRuntimeVersion -Value 'v4.0'
    }
}
Invoke-Command -ComputerName LT-CODE8 -ScriptBlock $scriptBlock

为什么此报告是真实的,或者我可以采取哪些步骤来进一步诊断?

4c8rllxm

4c8rllxm1#

我认为您错过了$使用:第一次调用$appPoolname时:

if (Test-Path IIS:\AppPools\$using:appPoolName) {
suzh9iv8

suzh9iv83#

我在VS代码中运行Powershell时遇到了这个问题,在伊势中它总是按预期工作。

相关问题