这是代码:
$computerList = "localhost", "luna"
$user = Get-Credential powershell
$date = Get-Date
foreach ($computer in $computerList) {
if ($computer -eq "localhost") { $session = New-PSSession -ComputerName $computer }
else { $session = New-PSSession -ComputerName $computer -Credential $user }
Invoke-Command -Session $session -ScriptBlock {
Set-Date -Date $date
}
}
我收到此错误:
Cannot bind argument to parameter 'Date' because it is null.
逐行在控制台中工作它可以工作,但是当运行脚本变量时,$ date为null,如错误所示。 为什么变量$ date null?
答案 0 :(得分:0)
它不应该以任何方式工作,你在远程会话中执行命令时指的是局部变量,你应该像这样调用变量:
Invoke-Command -Session $session -ScriptBlock {
Set-Date -Date $using:date
}