現在、スケジューラ経由でRスクリプトを起動しています。時にはRスクリプトがエラーを引き起こすことがあります(入力プロブレムのせいかもしれません)。それぞれの実行の後、履歴ログを含むr-outファイルが取得されます。そのログは、すべてが計画通りに行われたかどうかをチェックするのに役立ちますが、残念ながら毎日上書きされます。現在の日を含むファイル名を生成するにはフィル・ロギングのためにファイル名に日付を追加する方法
答えて
敬具、あなたに感謝し、 :私の質問は今ありますSys.Date()
の出力を受け取り、paste0
を使用して日付を含むファイルの名前を構成することができます。
たぶん、このような何か:これが所望される場合は
filename <- paste0("R-out_", Sys.Date(), ".log")
#> filename
#[1] "R-out_2016-08-24.log"
日付の形式は(おかげでこのことを思い出させるために@Konradする)format()
で変更することができます。例えば、我々はヨーロッパでは、例えば一般的に使用されている日 - 月 - 年の形式を、取得するためにformat(Sys.Date(), "%d-%m-%Y")
を使用することができます。
filename <- paste0("R-out_", format(Sys.Date(), "%d-%m-%Y"), ".log")
は、我々は、コンソール(標準)出力をリダイレクトするsink()
を使用することができますスクリプトをファイルに追加します。上述したようにこの場合、スクリプトは、何を標準出力に表示される前に、このスクリプトファイルに挿入されるべきコマンド
sink(filename)
続いて、filename
の定義を含むように編集することができます。可能であれば、これらの2行(ファイル名とシンクコマンドの定義)を最初に置くことができますが、最初にsetwd(<pathToMyOutputDirectory>)
を使用して出力ディレクトリを指定することをお勧めします。 sink(filename)
コマンドの後に、コンソールに通常表示される出力は、filename
に格納された文字列に従って呼び出されたファイルに格納されます。スクリプトの終わりには、パラメータなしでsink()
を使用して標準出力のデフォルト設定に戻すことをお勧めします(または同等の場合はsink(file = NULL)
)。
'Sys.Date()'呼び出しを 'format()'でカプセル化して、 '_'記号を名前に使用することと一貫性を持たせると便利であることを付け加えたいと思います:' format(Sys.Date() "%d_%m_%y") '。 – Konrad
また、ISO 8601の日付基準(fmt = "%Y-%m-%d")を使用することをお勧めします。これは、ファイルが日付順に並べ替えられやすくなるためです。長期的には頭痛が少ない。 – NJBurgo
スクリプトはバッチファイル(これはスケジューラを介してトリガされる)を介してトリガされます。スクリプト内にr.outファイルを作成するコマンドはありません。そのため、バッチファイルによって実行されますが、バッチファイル内で調整する方法がわかりません。 – Phil
- 1. SSIS - 日付欄のファイル名から日付を追加する
- 2. Windowsのファイル名に日付を追加するバッチ
- 3. 今日の日付をBigQueryの宛先テーブル名に追加する方法
- 4. TypeScriptで日付に日付を追加する方法
- 5. MongoExport - ファイル名に日付を追加する
- 6. Spring Batch - Filewriterファイル名にカスタム日付を追加する
- 7. JmeterとFilewriter - ファイル名に日付+タイムスタンプを追加する
- 8. ファイル名+ Robocopyロギングで現在の日付のファイルを作成
- 9. 最新の日付ファイルの日付を返してファイル名に追加するスクリプトを作成する
- 10. 日付を追加する方法( 'H:i:s')?
- 11. 日付オブジェクトにカレンダーオブジェクトでない日を追加する方法
- 12. ビルドのためにプロジェクトにjavaファイルを追加する方法
- 13. PHPでコピーする前にファイル名に日付を追加する
- 14. ファイルから日付形式を取得して、ファイル名に追加する
- 15. PHPメーラーの添付ファイルに日付を追加するSMTP
- 16. R日付に日を追加する
- 17. RedshiftからデータをS3にアンロードし、ファイル名に日付を含める方法
- 18. 日付をOracleデータベースに追加する日付日付
- 19. 整数列から日付列に日付を追加する方法
- 20. Djangoの集計クエリに日付フィルタを追加する方法
- 21. この日付に月を追加する方法
- 22. ヘルスケアの健康に日付を追加する方法
- 23. Codeigniterユーザーのサインアップ日付に年を追加する方法
- 24. "Date"データ型のArrayListに日付を追加する方法は?
- 25. 日付ピッカーのIDを動的に追加する方法
- 26. androidのアラームマネージャーに日付を追加する方法
- 27. 入力タイプの日付に値を追加する方法Javascript?
- 28. 日付を使ってcronのデータベースバックアップにファイル名を追加する
- 29. レールで日付を月に追加する方法
- 30. jQueryで日付に時間を追加する方法
私たちのためのいくつかのコードを手に入れましたか? http://stackoverflow.com/help/how-to-ask –
エラーを再現するのに役立つコードを追加することを検討してください。 –
はい、rHertel。このコードは、リモートで起動されて以来、各実行でコンソール出力を取得する方法ではなく、ここでは問題ではありません。私は下からあなたの答えが好きですが、私はどのように私はそれに私のコンソールの出力を埋めるのですか? – Phil