Powershell IF 语句 - 启用计划任务



我们当前的环境是如此......我们有一个黄金图像和众多的Citrix机器。每隔一段时间,我们都必须提供这些黄金映像。黄金映像上有一些计划任务(在黄金映像上停用(,然后在预配后仅在特定服务器上启用它们时,我们有一个计划任务来启用我们想要在该特定计算机上执行的其他任务。

到目前为止的代码:

$HostName = {(Get-CIMInstance CIM_ComputerSystem).Name}
$ServerName = "HOST01234"
If (& $HostName -eq $ServerName) {
Enable-ScheduledTask -TaskName "1"
Enable-ScheduledTask -TaskName "2"
Enable-ScheduledTask -TaskName "3"
Enable-ScheduledTask -TaskName "4"
Enable-ScheduledTask -TaskName "5"
} else {
exit
}

实际上,一个变量检查当前服务器主机名,然后运行 if else 语句以确保脚本位于特定服务器上。但是,当运行此命令时 - 无论我在哪个服务器上,都会执行启用计划任务命令。

试试这个(我从 if 语句中的$Hostname&中删除了大括号(:

$HostName = (Get-CIMInstance CIM_ComputerSystem).Name
$ServerName = "HOST01234"
If ($HostName -eq $ServerName) {
Enable-ScheduledTask -TaskName "1"
Enable-ScheduledTask -TaskName "2"
Enable-ScheduledTask -TaskName "3"
Enable-ScheduledTask -TaskName "4"
Enable-ScheduledTask -TaskName "5"
} else {
exit
}

最新更新