术语' Get-WebBinding'不被识别为cmdlet,函数,脚本文件或可操作程序的名称

时间:2017-03-23 15:28:58

标签: powershell iis windows-server-2008-r2

在Powershell中的服务器2008 R2标准版上。我正在尝试运行使用Get-WebBinding的脚本

try{
Import-Module WebAdministration
Get-WebApplication

$webapps = Get-WebApplication
$list = @()
foreach ($webapp in get-childitem IIS:\AppPools\)
{
$name = "IIS:\AppPools\" + $webapp.name
$item = @{}

$item.WebAppName = $webapp.name
$item.Version = (Get-ItemProperty $name managedRuntimeVersion).Value
$item.State = (Get-WebAppPoolState -Name $webapp.name).Value
$item.UserIdentityType = $webapp.processModel.identityType
$item.Username = $webapp.processModel.userName
$item.Password = $webapp.processModel.password

$obj = New-Object PSObject -Property $item
$list += $obj
}

$list | Format-Table -a -Property "WebAppName", "Version", "State", "UserIdentityType", "Username", "Password" | Out-String

}catch
{
$ExceptionMessage = "Error in Line: " + $_.Exception.Line + ". " + $_.Exception.GetType().FullName + ": " + $_.Exception.Message + " Stacktrace: " + $_.Exception.StackTrace
$ExceptionMessage
}

但是,我收到以下错误:

  

术语' Get-WebBinding'不被识别为cmdlet的名称,   功能,脚本文件或可操作程序。检查拼写   名称,或者如果包含路径,请验证路径是否正确   再试一次。       在行:25 char:15       + Get-WebBinding<<<< | %{           + CategoryInfo:ObjectNotFound:(Get-WebBinding:String)[],CommandNotFoundException           + FullyQualifiedErrorId:CommandNotFoundException

我尝试添加snapin并收到此错误:

  

PS C:\ Windows \ system32> add-pssnapin WebAdministration Add-PSSnapin:   没有为Windows PowerShell版本2注册管理单元   line:1 char:13   + add-pssnapin<<<< WebAdministration       + CategoryInfo:InvalidArgument:(WebAdministration:String)[Add-PSSnapin],PSArgumentException       + FullyQualifiedErrorId:AddPSSnapInRead,Microsoft.PowerShell.Commands.AddPSSnapinCommand

根据这篇文章https://community.spiceworks.com/topic/370385-powershell-commands-to-export-iis7-sites-binding-information:因为我使用的是iis 7,所以我试图获得powershell扩展。我去了iis.net链接(https://www.iis.net/downloads/microsoft/powershell),但无法找到下载。该按钮只会带您进入图库搜索。

有一个按钮可以安装扩展程序,但它不会启动安装程序。

1 个答案:

答案 0 :(得分:2)

Set-ExecutionPolicy RemoteSigned然后重启Powershell解决了我的问题。