Я написал сценарий R, который извлекает некоторые данные из базы данных, выполняет с ними несколько операций и отправляет результат в новую базу данных.
Я бы хотел, чтобы этот сценарий запускался каждый день в определенное время, но я не могу найти способ сделать это эффективно.
Может ли кто-нибудь порекомендовать ресурс, на который я мог бы взглянуть, чтобы решить эту проблему? Я запускаю этот сценарий на машине с Windows.
.R
а НЕ.r
.Предположим, что ваш R-скрипт
mytest.r
находится вD:\mydocuments\
, вы можете создать командный файл, включающий следующую команду:Затем добавьте его как новую задачу в планировщик задач Windows, задав там условия запуска.
Вы также можете опустить командный файл. Задайте
C:\R\R-2.10.1\bin\Rcmd.exe
вprogram/script
текстовом поле планировщика задач и введите вArguments
качестве остальной части исходной команды:BATCH D:\mydocuments\mytest.r
Планирование задач R с помощью планировщика задач Windows (опубликовано 11 февраля 2015 г.)
taskcheduleR: пакет R для планирования сценариев R с помощью диспетчера задач Windows ( опубликовано 17 марта 2016 г.)
РЕДАКТИРОВАТЬ
Недавно я снова стал использовать командные файлы, потому что хотел, чтобы окно cmd было свернуто (другого способа найти не удалось).
В частности, я заполняю
Actions
вкладку планировщика задач Windows следующим образом:Program/script:
cmd.exe
Add arguments (optional):
/ c start / min D: \ mydocuments \ mytest.bat ^ & выйти
Содержимое mytest.bat :
C: \ R \ R-3.5.2 \ bin \ x64 \ Rscript.exe D: \ mydocuments \ mytest.r params
источник
Rscript
предпочтительнееR BATCH
. Системы, которые могут различать строчные и прописные буквы, также получаютr
.Теперь в RStudio есть встроенная опция для этого, чтобы запустить планировщик, сначала установите ниже пакетов
После установки перейдите в
источник
Ставлю задачи через
SCHTASKS
программу. Для запуска скриптов при запуске вы должны написать что-нибудь вродеСм. Этот веб-сайт для получения более подробной информации
SCHTASKS
. Подробности на сайте Microsoft .источник
Вы можете использовать Планировщик задач Windows .
источник
Настройка планировщика задач
Шаг 1) Откройте планировщик задач (Пуск> поиск в планировщике задач)
Шаг 2) Нажмите «Действие»> «Создать задачу».
Шаг 3) Выберите «Запускать, только когда пользователь вошел в систему», снимите флажок «Запускать с наивысшими привилегиями», назовите свою задачу, настройте для «Windows Vista / Windows Server 2008»
Шаг 4) На вкладке «Триггеры» укажите, когда вы хотите, чтобы сценарий запускался.
Шаг 5) На вкладке «Действия» укажите полное расположение файла Rscript.exe, т.е.
Поместите имя вашего скрипта с помощью
-e
иsource()
в аргументы, обернув его следующим образом:Устранение неполадок Rscript, запланированного в планировщике заданий
Когда вы запускаете сценарий с помощью планировщика заданий, трудно устранить какие-либо проблемы, потому что вы не получаете сообщений об ошибках.
Это можно решить, используя
sink()
функцию в R, которая позволит вам выводить все сообщения об ошибках в указанный вами файл. Вот как это можно сделать:Еще одна вещь, которую вам нужно будет изменить, чтобы ваш Rscript заработал, - это указать полный путь к любому файлу в вашем скрипте.
Это не будет работать в планировщике задач:
Вам нужно будет указать полный путь к файлу любых сценариев, которые вы используете в своем Rscript:
источник
После выполнения любой комбинации этих шагов вы получите
"Argument Batch Ignored"
ошибке после запуска R.exe попробуйте это, у меня это сработало.В планировщике задач Windows:
замещать
BATCH "C:\Users\desktop\yourscript.R"
в поле аргументовс участием
CMD BATCH --vanilla --slave "C:\Users\desktop\yourscript.R"
источник