Powershell IF 语句 - Enable-ScheduledTask
Powershell IF Statement - Enable-ScheduledTask
我们当前的环境是如此..我们拥有大量 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 语句以确保脚本位于特定服务器上。然而,当 运行 这个命令时——不管我在哪个服务器上,都会执行 enable-scheduletask 命令。
试试这个(我在你的 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
}
我们当前的环境是如此..我们拥有大量 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 语句以确保脚本位于特定服务器上。然而,当 运行 这个命令时——不管我在哪个服务器上,都会执行 enable-scheduletask 命令。
试试这个(我在你的 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
}