无法终止 R 任务调度器中的任务

问题描述 投票:0回答:1

在R中的taskscheduler中启动一个任务,使用taskscheduler_stop终止,返回'SUCCESS:计划任务“Hello-World-Schedule”已成功终止'。 [1] 0,但任务仍在运行(显示在taskscheduler_ls中)。有没有其他方法可以结束这个任务(它每分钟运行一次)?

taskscheduler_stop(taskname),等待终止

r r-taskscheduler
1个回答
0
投票

我认为您可能对这些功能的作用感到困惑。

来自文档:

?taskcheduler_stop

停止 Windows 任务计划程序中正在运行的特定任务的运行。

?taskscheduler_ls

获取当前在 Windows 任务计划程序中计划的所有任务。

因此您对

taskcheduler_stop()
的调用停止了任务的当前运行。但是,该任务仍计划在任务计划程序中再次启动,因此继续显示在对
taskscheduler_ls()
的调用中。

也许您对

taskscheduler_delete()
感兴趣。

删除 Windows 任务计划程序中计划的特定任务。

或者您可能有兴趣禁用该任务,但由于 {taskscheduleR} 没有相应的函数,因此您需要实现自己的函数。

它可能看起来像这样:

taskscheduler_disable <- function (taskname) {
  cmd <- sprintf(
    "schtasks /change /TN %s /DISABLE", 
    shQuote(taskname, type = "cmd")
  )
  system(cmd, intern = FALSE)
}
© www.soinside.com 2019 - 2024. All rights reserved.