1

設定のリモート実行physicalPathは、次のメッセージでエラーになります:

ドライブが見つかりません。「IIS」という名前のドライブは存在しません。

次の何が間違っていますか?

$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
4

1 に答える 1

3

スクリプト ブロック内にモジュールをインポートする必要があります(モジュールはリモート ホストにインストールする必要があります)。また、スクリプトブロック内の両方の変数に同じ引数 ( $args[0]) が割り当てられており、最初の代入には誤った末尾のコンマがあります。

個々の変数割り当ての代わりにブロックを使用し、Param()の周りの無意味な括弧を削除しSet-ItemPropertyます。

$ScriptBlockContent = {
    Param($site, $newpath)
    Import-Module WebAdministration
    Set-ItemProperty -Path IIS:\\Sites\ABC_LIVE\$site -Name "physicalPath" -Value $newpath
}
于 2017-10-10T13:25:40.243 に答える