R.exe, Rcmd.exe, Rscript.exe dan Rterm.exe: apa bedanya?

112

Saya berjuang dengan executable R. Apa sebenarnya perbedaan antara R.exe (dengan atau tanpa opsi CMD BATCH), Rcmd.exe, Rscript.exe, dan Rterm.exe saat menjalankan baris perintah dalam file batch?

Dan apa perbedaan antara:

R.exe --no-environ --no-save < "c:\temp\R\test.R" > "c:\temp\R\out.txt" 2>&1

dan

R.exe CMD BATCH --no-environ --no-save "c:\temp\R\test.R" "c:\temp\R\out.txt"

Tidak ada perbedaan output.

Saya tidak dapat menemukan apa pun tentang Rcmd.exe dan Rscript.exe di manual referensi R halaman 3079.

Ngomong-ngomong: Saya menggunakan Windows.

waanders
sumber
3
Ya, saya sudah membaca itu. Tapi tidak ada kabar tentang Rcmd.exe dan hanya beberapa baris tentang Rscript.exe. help (Rscript) memberi saya beberapa informasi lebih lanjut
waanders

Jawaban:

116

Peringatan: Saya bekerja lebih banyak di Linux daripada Windows:

  • Rcmd.exeadalah sisa-sisa sejarah seperti pada hari itu, Anda tidak dapat melakukannya R CMD somethingdi Windows tetapi membutuhkan executable khusus Rcmd.exe something. Itu tidak lagi terjadi, namun disediakan untuk kompatibilitas ke belakang.
  • Rterm.exejuga merupakan sisa-sisa dari hari-hari ketika Rcmd.exedigunakan. Bisa diabaikan hari ini.
  • R CMD BATCHadalah penopang yang dibutuhkan di masa lalu yang lebih kecil dan Rscript.exe, dan juga bertahan dari dokumen dan kebiasaan lama ..
  • Rscript.exeadalah teman Anda untuk skrip batch; Gunakan.
  • Untuk yang lainnya, ada R.exe.

Selain itu, seperti yang diisyaratkan oleh Marek, buku pedoman referensi salah satu di antara enam buku petunjuk yang tersedia. Coba Pendahuluan R dan manual Instalasi dan Admin yang keduanya memiliki lampiran khusus untuk Windows.

Dirk Eddelbuettel
sumber
Terima kasih. Jadi saya bisa melupakan Rcmd.exe dan R CMD BATCH?
waanders
1
Saya hanya ingin menjalankan skrip R dengan baris perintah agurments di batchfile Windows (shell). Seperti yang saya pahami dengan benar R.exe sudah cukup bagi saya.
waanders
R Pendahuluan menyatakan "Dalam jendela terminal (...) dipanggil oleh R.exe atau lebih langsung oleh Rterm.exe". Jadi untuk yang lainnya Rterm?
Marek
7
Ada perbedaan penting antara R.exe dan Rterm.exe - Rterm.exe dikompilasi dengan / LARGEADDRESSAWARE dan dapat mengalokasikan RAM 4 GB ketika dijalankan di bawah Windows 64 bit, tidak seperti R.exe (kita berbicara tentang 32 bit R yang berjalan di bawah 64 bit Windows). Mengapa orang R melakukan ini hanya untuk Rterm.exe dan bukan untuk R.exe, jika Rterm.exe sudah usang?
Meh
2
... juga merupakan perbedaan penting antara R dan Rscript karena Rscript tidak dimuat package:methods... dan itulah bagian dari alasan mengapa ini adalah teman Anda untuk skrip batch (waktu mulai lebih cepat): stackoverflow.com/questions/19680462/…
russellpierce