Powershell IF语句 - Enable-ScheduledTask

时间:2018-03-21 07:00:11

标签: powershell powershell-v2.0 powershell-v3.0 powershell-v4.0

我们目前的环境如此......我们拥有众多Citrix机器的黄金形象。每隔一段时间我们就要提供这些黄金形象。我们在黄金映像上有一些计划任务(在黄金映像上停用),然后在配置之后它们仅在特定服务器上启用时,我们有一个计划任务来启用我们想要在该特定计算机上执行的其他任务。 / p> 到目前为止

代码:

$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语句以确保脚本位于特定服务器上。但是,当运行此命令时 - 无论我在哪台服务器上运行,都会执行enable-scheduletask命令。

1 个答案:

答案 0 :(得分:0)

试试这个(我从你的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
}