J'ai écrit un script R qui extrait des données d'une base de données, effectue plusieurs opérations dessus et en publie le résultat dans une nouvelle base de données.
J'aimerais que ce script soit exécuté tous les jours à une heure précise, mais je ne trouve aucun moyen de le faire efficacement.
Quelqu'un peut-il recommander une ressource sur laquelle je pourrais me tourner pour résoudre ce problème? J'exécute ce script sur une machine Windows.
En fait, sous Windows, vous n'avez même pas besoin de créer un fichier de commandes avant d'utiliser le planificateur.
En supposant que votre script R soit mytest.r
, Situé dans D:\mydocuments\
, Vous pouvez créer un fichier de traitement par lots comprenant la commande suivante:
C:\R\R-2.10.1\bin\Rcmd.exe BATCH D:\mydocuments\mytest.r
Ajoutez-le ensuite, en tant que nouvelle tâche, au planificateur de tâches Windows, définissez-y les conditions de déclenchement.
Vous pouvez également omettre le fichier de commandes. Définissez C:\R\R-2.10.1\bin\Rcmd.exe
Dans la zone de texte program/script
Du planificateur de tâches et donnez comme Arguments
le reste de la commande initiale: BATCH D:\mydocuments\mytest.r
Planification de tâches R via le planificateur de tâches Windows (Posté le 11 février 2015)
taskscheduleR: paquet R pour planifier des scripts R avec le gestionnaire de tâches Windows (Posté le 17 mars 2016)
[~ # ~] éditer [~ # ~]
J'ai récemment adopté à nouveau l'utilisation de fichiers de commandes, car je souhaitais que la fenêtre cmd soit réduite (je ne pouvais pas trouver un autre moyen).
Plus précisément, je remplis l'onglet du planificateur de tâches Windows Actions
comme suit:
Program/script:
cmd.exe
Add arguments (optional):
/ c start/min D:\mydocuments\mytest.bat ^ & exit
Contenu de mytest.bat:
C:\R\R-3.5.2\bin\x64\Rscript.exe Paramètres D:\mydocuments\mytest.r
J'ai configuré mes tâches via le programme SCHTASKS
. Pour exécuter des scripts au démarrage, vous devez écrire quelque chose dans le sens de
SCHTASKS /Create /SC ONSTART /TN MyProgram /TR "R CMD BATCH --Vanilla d:\path\to\script.R"
Voir ce site pour plus de détails sur SCHTASKS
. Plus de détails sur site Web de Microsoft .
Vous pouvez utiliser Planificateur de tâches Windows .
RStudio a maintenant une option intégrée pour le faire, pour lancer la première installation du planificateur sous les paquets
install.packages('data.table')
install.packages('knitr')
install.packages('miniUI')
install.packages('shiny')
install.packages("taskscheduleR", repos = "http://www.datatailor.be/rcube", type =
"source")
Après l'installation, allez à
**TOOLS -> ADDINS ->BROWSE ADDINS ->taskscheduleR -> Select it and execute it.**
Après avoir suivi une combinaison quelconque de ces étapes et reçu le "Argument Batch Ignored"
erreur après l'exécution de R.exe, essayez ceci, cela a fonctionné pour moi.
Dans le Planificateur de tâches Windows:
Remplacer BATCH "C:\Users\desktop\yourscript.R"
dans le champ des arguments
avec
CMD BATCH --Vanilla --slave "C:\Users\desktop\yourscript.R"