my $delay = 3600; my $$service2start = "C:\\path\\mycoolservice.exe"; my $starttime = sprintf "%d:%02d:%02d", (localtime(time+$delay))[2,1,0]; exec("at", $starttime, "net", "start", $service2start);