125

データベースからいくつかのデータを取得し、いくつかの操作を実行して、出力を新しいデータベースにポストする R スクリプトを作成しました。

このスクリプトを毎日特定の時間に実行したいのですが、これを効果的に実行する方法が見つかりません。

この問題を解決するために参照できるリソースを推奨できる人はいますか? このスクリプトを Windows マシンで実行しています。

4

7 に答える 7

116

実際、Windows では、スケジューラを使用するために最初にバッチ ファイルを作成する必要さえありません。

  • スケジューラを開きます: [スタート] -> [すべてのプログラム] -> [アクセサリ] -> [システム ツール] -> [スケジューラ]
  • 新しいタスクを作成する
  • タブアクションの下で、新しいアクションを作成します
  • プログラムの開始を選択します
  • Rscript.exeを参照して、たとえばここに配置する必要があります:
    "C:\Program Files\R\R-3.0.2\bin\x64\Rscript.exe"
  • パラメータフィールドにファイルの名前を入力します
  • 開始フィールドにスクリプトが見つかるパスを入力します
  • トリガータブに移動します
  • 新しいトリガーを作成する
  • タスクを毎日、毎月、... 数回繰り返すか、好きなように実行するかを選択します
于 2014-02-04T09:24:14.713 に答える
60

R スクリプトがmytest.rにあるとするとD:\mydocuments\、次のコマンドを含むバッチ ファイルを作成できます。

C:\R\R-2.10.1\bin\Rcmd.exe BATCH D:\mydocuments\mytest.r

次に、それを新しいタスクとして Windows タスク スケジューラに追加し、トリガー条件を設定します。

バッチ ファイルを省略することもできます。タスク スケジューラのテキスト ボックスに設定C:\R\R-2.10.1\bin\Rcmd.exeし、初期コマンドの残りの部分として次のように指定します。program/scriptArgumentsBATCH D:\mydocuments\mytest.r

Windows タスク スケジューラによる R タスクのスケジュール設定(2015 年 2 月 11 日投稿)

taskscheduleR: Windows タスク マネージャーで R スクリプトをスケジュールする R パッケージ(2016 年 3 月 17 日投稿)

編集

cmdウィンドウを最小化したかったので、最近、バッチファイルの使用を再び採用しました(別の方法が見つかりませんでした)。

具体的には、Windows タスク スケジューラのActionsタブに次のように入力します。

Program/script:

cmd.exe

Add arguments (optional):

/c start /min D:\mydocuments\mytest.bat ^& exit

mytest.bat の内容:

C:\R\R-3.5.2\bin\x64\Rscript.exe D:\mydocuments\mytest.r パラメータ

于 2010-05-08T10:02:55.537 に答える
4

プログラムを介してタスクを設定しSCHTASKSます。起動時にスクリプトを実行するには、次の行に沿って何かを記述します。

SCHTASKS /Create /SC ONSTART /TN MyProgram /TR "R CMD BATCH --vanilla d:\path\to\script.R"

の詳細については、この Web サイトを参照してくださいSCHTASKS。詳細については、Microsoft の Web サイトを参照してください。

于 2011-07-16T15:07:03.767 に答える
3

Windows タスク スケジューラを使用できます。

于 2010-05-08T08:19:00.367 に答える