From af27a06f89ede9615e946b297d895e221273c4f6 Mon Sep 17 00:00:00 2001 From: Jason Shirk Date: Thu, 21 Jul 2016 09:18:28 -0700 Subject: [PATCH] Fix Remove-CronTab to only remove the correct job(s) --- demos/crontab/CronTab/CronTab.psm1 | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/demos/crontab/CronTab/CronTab.psm1 b/demos/crontab/CronTab/CronTab.psm1 index b49201ce9..b694ddf52 100644 --- a/demos/crontab/CronTab/CronTab.psm1 +++ b/demos/crontab/CronTab/CronTab.psm1 @@ -11,6 +11,12 @@ class CronJob { [string] $Month [string] $DayOfWeek [string] $Command + + [string] ToString() + { + return "{0} {1} {2} {3} {4} {5}" -f + $this.Minute, $this.Hour, $this.DayOfMonth, $this.Month, $this.DayOfWeek, $this.Command + } } # Internal helper functions @@ -100,9 +106,9 @@ function Remove-CronJob { $newcrontab = [List[string]]::new() $found = $false + $JobAsString = $Job.ToString() foreach ($line in $crontab) { - $cronjob = ConvertTo-CronJob -crontab $line - if ((Compare-object $cronjob.psobject.properties $Job.psobject.properties) -eq $null) { + if ($JobAsString -ceq $line) { $found = $true } else { $newcrontab.Add($line)