我有一个分段的 Active Directory 网络,其中多个 VLAN 只能与本地 AD 服务器通信,但所有 AD 服务器都可以相互通信。我想要一个可以通过每个 AD 服务器代理的脚本,以便在每个 VLAN 的每个系统上运行命令。但是,我的代码似乎没有运行这些命令。
function RunRemote {
param([string]$ScriptBlock,[string]$Server,[string]$DC)
$icm = '[ScriptBlock]$sb=[ScriptBlock]::create(' + $ScriptBlock + ');icm -cn ' + $Server + ' -ScriptBlock $sb'
icm -cn $DC -ScriptBlock { $icm }
}
$ScriptBlock = "date"
$Server = "Comp01"
$DC= "DC01"
RunRemote $ScriptBlock $Server
我没有收到任何错误,但发送的命令都没有在远程服务器上运行。如果我与 AD 服务器进行交互式会话,则 Invoke 命令对每个 vlan 都按预期工作。