コマンドラインから簡単なプロットを行うためのRスクリプトがあると非常に便利です。ただし、bashスクリプトからRを実行することは、まったく便利ではありません。理想は次のようなものかもしれません
#!/path/to/R
...
または
#!/usr/bin/env R
...
しかし、私はそれらのどちらも機能させることができませんでした。
もう1つのオプションは、スクリプトをRで純粋に保持するscript.R
ことR --file=script.R
です。たとえば、などでスクリプトを呼び出します。ただし、スクリプトは、コードの一部がスクリプトの外部に存在する不明瞭なコマンドラインスイッチに依存する場合があります。例:ローカルの.Rprofileを介してbashからRにこっそり入れると、目的のスイッチは--vanilla
を除いてすべてが意味し--no-init-file
ます。
もう1つのオプションは、Rフラグを保存し、簡単に実行できるようにするbashスクリプトで、これによりRスクリプトが呼び出されます。問題は、これが単一のプログラムが2つのファイルに分割され、同期を維持したり、新しいマシンに一緒に転送したりする必要があるということです。
私が現在最も嫌うオプションは、Rをbashスクリプトに埋め込むことです。
#!/bin/bash
... # usage message to catch bad input without invoking R
... # any bash pre-processing of input
... # etc
R --random-flags <<RSCRIPT
# R code goes here
RSCRIPT
すべてが1つのファイルに含まれています。実行可能で、引数を簡単に処理します。問題は、bashとRをこのように組み合わせると、IDEがどちらかで失敗しない可能性がほとんどなくなり、私の心が本当に傷つくことです。
私が見逃しているより良い方法はありますか?