3

R スクリプトを継続的に実行して、フォルダー内のファイルをチェックし、それらのファイルに対して何かを実行したいと考えています。

このコードは単純にファイルをチェックし、そのファイルを別の場所に移動して名前を変更し、古いファイルを削除します (実際には、これよりも少し複雑です)。

スクリプトを実行すると問題なく動作しますが、R がファイルを自動的に検出するようにします。つまり、そのフォルダーにファイルを配置した場合にスクリプトを実行する必要がないように、R にスクリプトを継続的に実行させる方法はありますか?

4

2 に答える 2

8

repeat純粋なRでは、無限ループが必要です...

repeat {
  print('Checking files')
  # Your code to do file manipulation

  Sys.sleep(time=5)  # to stop execution for 5 sec

}

ただし、OS によっては、この種のファイル操作に適したより優れたツールが存在する場合があります。

于 2013-01-28T14:19:15.720 に答える
1

tcltk2 パッケージの関数を使用してtclTaskSchedule、関数または式を定期的に実行するようにスケジュールできます。このような複数のタスクをスケジュールして、R セッションで引き続き機能させることができます (スケジュールされたタスクが変更する可能性のあるものを変更しないように注意してください。そうしないと、予測できない結果が生じる可能性があります)。

ただし、特定の rscript を実行する OS ベースのソリューションは、より優れたアプローチである可能性があります。

于 2013-01-28T21:40:38.513 に答える