Set-ItemProperty 物理路径
Set-ItemProperty physicalPath
设置 physicalPath
的远程执行出错并显示以下消息:
Cannot find drive. A drive with the name 'IIS' does not exist.
下面有什么问题吗?
$site = Read-Host "What is the name of the virtual?"
$newpath = Read-Host "What is the NEW PATH of the new site?"
$ScriptBlockContent = {
$site = $args[0],
$newpath = $args[0]
(Set-ItemProperty -Path IIS:\Sites\ABC_LIVE$site -Name "physicalPath" -Value "$newpath")
}
# Add the IIS PowerShell Module
Import-Module WebAdministration
Invoke-Command -ComputerName DEVSERVERNAME -ScriptBlock $ScriptBlockContent -ArgumentList $site,$newpath
您需要在脚本块中导入模块(该模块必须安装在远程主机上)。此外,脚本块中的两个变量都分配了相同的参数 ($args[0]
),并且第一个分配有一个虚假的尾随逗号。
使用 Param()
块而不是单独的变量赋值,并删除 Set-ItemProperty
周围无意义的括号。
$ScriptBlockContent = {
Param($site, $newpath)
Import-Module WebAdministration
Set-ItemProperty -Path IIS:\Sites\ABC_LIVE$site -Name "physicalPath" -Value $newpath
}
设置 physicalPath
的远程执行出错并显示以下消息:
Cannot find drive. A drive with the name 'IIS' does not exist.
下面有什么问题吗?
$site = Read-Host "What is the name of the virtual?"
$newpath = Read-Host "What is the NEW PATH of the new site?"
$ScriptBlockContent = {
$site = $args[0],
$newpath = $args[0]
(Set-ItemProperty -Path IIS:\Sites\ABC_LIVE$site -Name "physicalPath" -Value "$newpath")
}
# Add the IIS PowerShell Module
Import-Module WebAdministration
Invoke-Command -ComputerName DEVSERVERNAME -ScriptBlock $ScriptBlockContent -ArgumentList $site,$newpath
您需要在脚本块中导入模块(该模块必须安装在远程主机上)。此外,脚本块中的两个变量都分配了相同的参数 ($args[0]
),并且第一个分配有一个虚假的尾随逗号。
使用 Param()
块而不是单独的变量赋值,并删除 Set-ItemProperty
周围无意义的括号。
$ScriptBlockContent = {
Param($site, $newpath)
Import-Module WebAdministration
Set-ItemProperty -Path IIS:\Sites\ABC_LIVE$site -Name "physicalPath" -Value $newpath
}