Heute gibts mal was besonderes für alle PoSh Anhänger. Ein Cron Server direkt in der Powershell implementiert.
Da er noch nicht produktiv genutzt werden sollte (Fehler bei der Ausführung von Scripts usw) ist der Code auch erstmal für einen Monat nur Verfügbar.
Wichtig sind folgende Anpassungen:
$cronfile -> Pfad zur CSV Datei
$logfile -> Pfad zur Logdatei
Die CSV Datei muss so aussehen:
“min”,”hour”,”day”,”month”,”command”,”ps”
Um einen Befehl einzutragen muss man sich an den CSV Standard halten!
Wichtig ist hierbei zu unterscheiden -> ist es ein externer Befehl (ein Programm) oder ein CmdLet (Posh) -> ist es ein CmdLet muss als Wert bei PS eine 1 stehen, damit das Skript es unterscheiden kann. Wie im echten Cron ist gibt es die Unterscheidung:
* = Immer ausführen
10 = An Minuten/Stunde/Tag/Monat 10 Ausführen
10 12 = An Minuten/Stunden/Tage/Monate 10 12 ausführen
Um einfach mit der Powershell die CSV zu erstellen, hier ein kurzes Skript:
$cron = @()
$row = “” | select-object min,day,hour,month,command,ps
$row.min = read-host
$row.day = read-host
$row.hour = read-host
$row.month = read-host
$row.command = read-host
$row.ps = read-host
$cron += $row
$cron | export-csv C:\temp\cron.csv
Code ist hier zu finden : PSCron