$theTitle=wp_title(" - ", false); if($theTitle != "") { ?>
About Virtualization, VDI, SBC, Application Compatibility and anything else I feel like
31 Jan // php the_time('Y') ?>
I wanted to create a Scheduled Task on my Citrix Servers to have the reboot every other night.
The idea is that half of the servers will reboot in a night and the other half the following night.
The TSSHUTDN tool is handy since it can issue a warning to logged on users, log them out after a certain period and finally issue the reboot.
Since I needed to add a scheduled task to many servers I wanted to do this with a script.
WMI Exposes the Win32_ScheduledJob Class and it’s Create Method.
The parameters, especially StartTime, are constructed very odly and I can never remember them.
So I wrote a very simple wrapper in PowerShell to make it a little easier for the next time:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | # Weekdays $Mo = 1 ; $Tu = 2 ; $We = 4 ; $Th = 8 ; $Fr = 16 ; $Sa = 32 ; $Su = 64 # Get Time Bias $Bias = $Bias = "{0:D3}" -f [int][System.TimeZoneInfo]::Local.BaseUtcOffset.TotalMinutes # Get Correct Sign if ($Bias -gt 0) { $Sign = "+" } else { $Sign ="-" } # Fill in these parameters $Command = "tsshutdn.exe 900 /reboot /delay:300 /v" # Time in HHMMSS (24h) $Time = "020000" $Repeat = $true # if $Repeat = False then $Days must be 0 else combine days with -bor $Days = $Mo -bor $We -bor $Fr # End fill in # Compose StartTime String $StartTime = [System.String]::Concat("********", $Time, ".000000", $Sign, $Bias) # Add the task, note that DaysOfMonth and InteractWithDesktop (last 2 params) are not used ([wmiclass]"Win32_ScheduledJob").Create($Command, $StartTime, $Repeat, $Days, $null, $false) |
2 Responses for "PowerShell Script to add reboot scheduled task for Citrix"
[…] Dit blogartikel was vermeld op Twitter door John McBride, Remko Weijnen. Remko Weijnen heeft gezegd: Blogged: #PowerShell script to add a scheduled reboot task for #Citrix http://bit.ly/eFGy7t […]
[…] Feb For my Reboot Script I needed to get the last character of the computername and convert it to an […]
Leave a reply