9

Rscript を使用して R スクリプトを実行していますが、画面に大量の出力が表示されます。Rscript をサイレント モード (画面出力なし) で実行できますか?

4

3 に答える 3

14

いくつかのオプションが思い浮かびます:

  1. R 内:sink()出力をファイルに転送するために使用します。help(sink)

  2. シェル上: Rscript myscript.R 2>&1 >/dev/null

  3. コードを編集してください:)

  4. Linux では、デフォルトでモードで実行される小さなフロントエンドを使用してください :)--slave

オプション 3 は最も複雑ですが、おそらく最適です。「debug」または「verbose」で出力/表示するロギングスキームを使用できますが、それ以外の場合は使用できません。スクリプトに与えられたコマンドラインのトグルに基づいて、私はよくこれを行います。

于 2014-08-05T15:11:08.173 に答える
6

出力をリダイレクトできます

Rscript myscript.R >& >/dev/null (linux)

また

Rscript myscript.R >$null (windows)

またはR直接使用:

R --quiet --vanilla < myscript.R

また

R CMD BATCH myscript.R

(その最後のバージョンは出力をファイルに書き込みますmyscript.Rout)

于 2014-08-05T15:13:09.460 に答える
0

もう 1 つのオプション: 出力とエラー メッセージを別のファイルに分けて、問題を特定しやすくしたい場合は、シェルで次のコマンドを使用できます。

Rscript myscript.R >a.Rout 2>a.Rerr

これにより、プログラム出力が a.Rout に書き込まれ、エラー メッセージが a.Rerr に書き込まれます。エラーを回避するために、a.Rout と a.Rerr のファイルは事前に削除する必要があることに注意してください。

于 2016-12-22T12:04:23.100 に答える