On Thu, Mar 01, 2012 at 11:53:00AM -0800, statquant2 wrote: > Hi there, > I am trying to find an example how to use Rscript > Let's suppose I want to pass 3 arguments (I don't want [options] and -e > [expressions] as described in help) > > *on the command line > myRscript.R -arg1=value1 -arg2=value2 -arg3=value3 > > *In the script > #! /path/to/Rscript > args = commandArgs(TRUE); > > >From what I see args is just a string, do I do things correctly ?
Hi. Extending your example with print(args), i obtained ./myRscript.R -arg1=value1 -arg2=value2 -arg3=value3 [1] "-arg1=value1" "-arg2=value2" "-arg3=value3" If you can use a fixed order of the arguments, then you need not use the "-arg[i]=" parts. The arguments are strings on the command line, so they are also passed to R as strings, but you can convert them inside the script. For example, with the above script, i get ./myRscript.R 23 45 78 [1] "23" "45" "78" However, if the script contains args <- as.numeric(args) , then i get ./myRscript.R 23 45 78 [1] 23 45 78 which is a numeric vector. If you want to keep the "arg[i]=" structure, you can have in the script x <- strsplit(args, "=") print(x) and a call produces ./myRscript.R -arg1=value1 -arg2=value2 -arg3=value3 [[1]] [1] "-arg1" "value1" [[2]] [1] "-arg2" "value2" [[3]] [1] "-arg3" "value3" The list "x" may then be further analyzed. Hope this helps. Petr Savicky. ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.