Configurando o agendador de tarefas
Etapa 1) Abra o agendador de tarefas (Iniciar> pesquisar o Agendador de tarefas)
Etapa 2) Clique em "Ação"> "Criar Tarefa"
Etapa 3) Selecione "Executar apenas quando o usuário estiver conectado", desmarque "Executar com privilégios mais altos", nomeie sua tarefa, configure para "Windows Vista / Windows Server 2008"
Etapa 4) Na guia "Triggers", defina quando deseja que o script seja executado
Etapa 5) Na guia "Ações", coloque a localização completa do arquivo Rscript.exe, ou seja,
"C:\Program Files\R\R-3.6.2\bin\Rscript.exe" (include the quotes)
Coloque o nome do seu script com -e
e source()
em argumentos, envolvendo-o assim:
-e "source('C:/location_of_my_script/test.R')"
Solução de problemas de um Rscript agendado no Agendador de tarefas
Quando você executa um script usando o Agendador de tarefas, é difícil solucionar quaisquer problemas porque você não recebe nenhuma mensagem de erro.
Isso pode ser resolvido usando a sink()
função em R, que permitirá a saída de todas as mensagens de erro para um arquivo que você especificar. Veja como você pode fazer isso:
# Set up error log ------------------------------------------------------------
error_log <- file("C:/location_of_my_script/error_log.Rout", open="wt")
sink(error_log, type="message")
try({
# insert your code here
})
A outra coisa que você terá que mudar para fazer seu Rscript funcionar é especificar o caminho completo de qualquer caminho de arquivo em seu script.
Isso não funcionará no agendador de tarefas:
source("./functions/import_function.R")
Você precisará especificar o caminho completo do arquivo de todos os scripts que você está fornecendo em seu Rscript:
source("C:/location_of_my_script/functions/import_function.R")
.R
e NÃO.r
.