次のヘッダーを持つサーバー リストを取得する powershell スクリプトがあります。コンピューター名、optype、opname. 次にループし、サーバー、サービス、サービス名の形式がある場合は、サービスを開始/停止します。server,script,script_path_name の形式の場合、invoke-command を使用してそのスクリプトを実行しようとしています。ただし、どうにかしてリモート セッションを確立する必要があります。これがエラー txt です。
[c1399] リモート サーバー c1399 への接続は、次のエラー メッセージで失敗しました: クライアントは、要求で指定された宛先に接続できません。宛先のサービスが実行中であり、要求を受け入れていることを確認します。宛先で実行されている WS-Management サービスのログとドキュメントを参照してください。最も一般的なのは IIS または WinRM です。宛先が WinRM サービスの場合は、宛先で次のコマンドを実行して、WinRM サービスを分析および構成します: "winrm quickconfig"。詳細については、about_Remote_Troubleshooting ヘルプ トピックを参照してください。+ CategoryInfo : OpenError: (c1399:String) []、PSRemotingTransportException + FullyQualifiedErrorId : CannotConnect、PSSessionStateBroken
ここに私が使用している現在のコードがあります...
elseif($computer.optype -eq "script")
{
write-host running script $computer.opname on $computer.computername
$Status = Invoke-Command -ComputerName $computer.computername -ScriptBlock { . $computer.opname }
Write-Output "Script execution status for $($computer.name) is $Status" >> C:\Scripts\RMLog.txt
}