如何通过Windows任务计划程序通过多个目录运行R脚本

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

我正在尝试通过Windows任务计划程序在R中自动执行某些报告。问题是我一直得到0x1错误代码,我相信这是因为自动脚本使用R中的source()函数来调用不在同一目录中的其他脚本。

我试过创建一个.bat文件,但它遇到了同样的问题。我的用户也拥有安全权限。

@echo off 
"C:\Program Files\R\R-3.5.2\bin\Rscript.exe" "C:\Users\me\data\report\file.R"
pause

我也尝试过:

@echo off 
"C:\Program Files\R\R-3.5.2\bin\Rscript.exe" -e"source('C:/Users/me/data/report/file.R')"

有人知道如何自动化通过多个目录的脚本吗?或者我是否真的必须克隆这些脚本并将它们全部放在同一个文件夹中才能实现自动化?

r windows scheduled-tasks cron-task taskscheduler
1个回答
0
投票

您不必将它们全部放在同一目录中。

我创建了一个脚本,调用另一个目录中的另一个脚本,并使用taskscheduleR创建了一个任务。

它对我有用,所以我不认为这个问题与source()有关。

然而,您的问题很难再现。但它可能与管理员角色有关。如果您有IT部门,我建议您与IT部门联系。

source("C:/Users/ADMFIWA/Documents/task-test-other/other-summary.R")

library(taskscheduleR)
taskscheduler_create(taskname = "test",
                     rscript = "C:/Users/ADMFIWA/Documents/task-test/summary.R", 
                     schedule = "ONCE", starttime = format(Sys.time() + 62, "%H:%M"))
#> [1] "SUCCESS: The scheduled task \"test\" has successfully been created."

reprex package创建于2019-03-12(v0.2.0)。

© www.soinside.com 2019 - 2024. All rights reserved.