为什么Windows调度程序上的自定义任务不执行..?

时间:2015-02-21 12:06:05

标签: windows powershell scheduled-tasks powershell-v3.0 windows-scheduler

我尝试在Windows任务调度程序中创建一个任务,我在某个特定时间放置了触发器。但即使在时间过去任务也没有被触发。 我的任务总是向我显示状态"准备好",即使在预期的时间显示"准备好"不是"跑步"为什么会如此,如果有任何方式与powershell这样做让我知道。

我在远程计算机上使用powershell命令行开关创建了计划任务。

    $Session = New-PSSession -ComputerName $ComputerName -Credential $cr            
    Invoke-Command -Session $Session -ScriptBlock { $start = (Get-Date).AddMinutes(1).ToString("HH:mm:ss")

   [string]$Result = schtasks /create /tn "bittry1" /tr" $PSHome\powershell.exe Start-BitsTransfer -Source D:\a.exe -Destination C:\ -Asynchronous " /sc once /st $start /ru "Administrator" /rp "passw0rd@12"
   $Result
   }

1 个答案:

答案 0 :(得分:0)

从我收集到的信息中,您可以尝试拨打Powershell.exe并使用Start-BitsTransfer -Source D:\a.exe -Destination C:\ -Asynchronous运行该信息?

如果是这种情况,则需要使用-command参数。另外,我建议您拨打Powershell而不是$PSHome\Powershell.exe

最后,您可以创建它并强制它立即运行,而不是创建一个在一分钟内运行的任务。

   $Session = New-PSSession -ComputerName $ComputerName -Credential $cr            
   Invoke-Command -Session $Session -ScriptBlock {
       [string]$Result = schtasks /create /tn "bittry1" /tr "powershell -command {Start-BitsTransfer -Source D:\a.exe -Destination C:\ -Asynchronous} " /sc once /SD "01/01/2000" /ST "00:00:00" /ru "Administrator" /rp "passw0rd@12"
       $Result += schtasks /run /tn "bittry1"
       $Result
   }

你可能会忘记你的+1分钟时间表,我认为修复其他部分应该让它工作,但我发现这更加严格。

如果没有解决问题,您应该尝试手动创建完全相同的任务,然后查看它是否正常运行。