在 R 中每天同时运行任务调度程序

Posted

技术标签:

【中文标题】在 R 中每天同时运行任务调度程序【英文标题】:In R Run taskscheduler everyday at the same time 【发布时间】:2017-11-23 07:43:43 【问题描述】:

拜托,有人可以帮我设置一个脚本,让它每天晚上 11:00 自动运行吗? 我找到了包“taskscheduleR”,但我不知道如何用它运行我的脚本。

提前致谢!

taskschedulerR 示例:

myscript <- system.file("extdata", "helloworld.R", package = "taskscheduleR")

## run script once within 62 seconds taskscheduler_create(taskname = "myfancyscript", rscript = myscript, schedule = "ONCE", starttime = format(Sys.time() + 62, "%H:%M"))

我的脚本

dayfile <- read.csv("A:/file_170611.txt", sep = " ", header=F, stringsAsFactors = F)
write.table(dayfile, file="A:/dayfiles/dayfile.txt", sep = " ")

【问题讨论】:

你在用windows吗? 【参考方案1】:

README of taskscheduleR 看起来很中肯:

library(taskscheduleR)
myscript <- "A:/script.R" # path to script
taskscheduler_create(taskname = "myscriptdaily", rscript = myscript, 
    schedule = "DAILY", starttime = "09:10", 
    startdate = format(Sys.Date()+1, "%d/%m/%Y")
)

你就完成了。

【讨论】:

为什么代码格式是“format(Sys.Date()+1”?这部分代码我没看懂。 Sys.Date() 是今天, Sys.Date()+1 是明天。所以脚本在明天早上 9 点 10 分首先执行。 format 将 Date 对象转换为字符。

以上是关于在 R 中每天同时运行任务调度程序的主要内容,如果未能解决你的问题,请参考以下文章

有什么方法可以根据文件的存在而不是具体时间来触发cron任务的运行?

如何在 Django 中动态调度任务?

用于运行调度程序长时间运行任务的 Web Api 或 WCF

自动调度任务--运行main.java文件。

Python 使用任务调度程序自动登录 Windows

《Linux内核设计与实现》读书笔记- 进程的调度