1

2 つのシナリオ a) シャットダウン出力リダイレクトと b) ファイル out.txt への Rscript 出力リダイレクトを検討してください。ここに何か不足していますか、それとも Rscript.exe 特有のものですか?

C:\>C:\\WINDOWS\\system32\\shutdown.exe -t:30 > out.txt

C:\>dir out.txt
 Volume in drive C has no label.
 Volume Serial Number is 3568-1B07

 Directory of C:\

07/18/2012  07:43 PM               841 out.txt
               1 File(s)            841 bytes
               0 Dir(s)  17,618,206,720 bytes free

C:\>G:\\Progra~1\\R\\R-2.14.0\\bin\\Rscript.exe --version > out.txt
R scripting front-end version 2.14.0 (2011-10-31)

C:\>dir out.txt
 Volume in drive C has no label.
 Volume Serial Number is 3568-1B07

 Directory of C:\

07/18/2012  07:44 PM                 0 out.txt
               1 File(s)              0 bytes
               0 Dir(s)  17,618,239,488 bytes free

Rscript.exe の出力がファイル out.txt にリダイレクトされない理由に関するアイデアや説明はありますか?? たぶん、非常に簡単な説明が待っています。

ありがとう、

4

2 に答える 2

1

リダイレクトを使用してバージョン情報を取得することはできませんが、実際の R コマンドにはリダイレクトを使用できます。たとえば、a.rコマンドが 1 つしかないファイルがある場合は、次のよう1+1になります。

Rscript a.r > out.txt

結果が表示されます。Rバージョン情報を送信する「出力」と関係があると思います。STDOUT (または DOS の同等の概念) ではなく STDERR に出力されるため、リダイレクトが機能しないと思います。

于 2012-07-18T14:30:05.700 に答える
1

答えはとても簡単です。バージョン情報は STDERR (標準エラー ストリーム) に書き込まれますが、リダイレクトするのは STDOUT (標準出力) だけです。両方をファイルに移動する場合は、使用します

G:\\Progra~1\\R\\R-2.14.0\\bin\\Rscript.exe --version >out.txt 2>&1
于 2012-07-18T14:30:30.247 に答える