[R] how to run a R program with input arguments
cls59
chuck at sharpsteen.net
Tue Jul 14 02:01:08 CEST 2009
edisonying wrote:
>
> I am a beginner in R and know only a little about it yet. I have a script
> written in R language, named as "a.txt" for example. I am using a Linux
> machine, at present I only know that I can type "R" in the terminal and
> then copy-paste the content in "a.txt" to the R's interface to execute the
> program. However, I want to know if there is any method that allows me to
> add some input arguments directly after the "R" in the terminal.
> Specifically, I want to type the following in the cmd line:
>
> R (some flags or option) a.txt
>
> then the program will begin to run. Besides, if the program will read a
> data file first, can I also specify the data file in the command line?
> Then the complete command will become:
>
> R a.txt data.txt
>
> This is important for a beginner. Thanks very much!:working:
>
>
We usually have R execute scripts in the following manner:
R --vanilla --slave --args [your args here] < scriptFile.R
Inside scriptFile.R the arguments can be retrieved by using
commandArgs(trailingOnly = T). The trailingOnly flag causes only the
arguments following --args to be be returned and not --args, --vanilla (no
save, no restore, quick startup) and --slave (makes R run quiet).
Personally, I get tired of typing R --vanilla --slave --args all the time
and prefer to use Rscript. Since you are using Linux you can do the same by
putting the following hashbang at the top of your file:
#!/usr/bin/env Rscript
Then your script can be run using:
./scriptFile.R [your args here]
The arguments are still accessed inside the script using commandArgs(T)
Good luck!
-Charlie
-----
Charlie Sharpsteen
Undergraduate
Environmental Resources Engineering
Humboldt State University
--
View this message in context: http://www.nabble.com/how-to-run-a-R-program-with-input-arguments-tp24465852p24471559.html
Sent from the R help mailing list archive at Nabble.com.
More information about the R-help
mailing list