Anyone ?

I guess I'll have to make a package that ships the execute script

Romain

On 08/05/2009 11:32 AM, Romain Francois wrote:
Hello,

WRE contains the following information about the "exec" subdirectory of
a package :

"Subdirectory exec could contain additional executables the package
needs, typically scripts for interpreters such as the shell, Perl, or
Tcl. This mechanism is currently used only by a very few packages, and
still experimental."

I think it would be useful to expand "very few". For example "tcltk"
uses it.

But the real questions are;
- can this be used in conjunction with "R CMD", something like

$ R CMD execute package script parameters

The alternative used in a few packages (Rserve, Roxygen, ...) is to add
a file in ${R_HOME}/bin, but I am not sure this works with binary builds
of packages

- can the script be an R script, in that case would a shebang like this
be enough :

#!/bin/env Rscript

definitely works on (at least my) linux

A very naive "execute" written in R follows.

Romain




#!/bin/env Rscript

args<- commandArgs(TRUE)
if( length(args)<  2 ){
          stop( "usage : R CMD execute package script [parameters]\n" )
}

package<- args[1]
script<- args[2]
scriptfile<- file.path( system.file( "exec", script, package = package ) )
if( !file.exists( scriptfile ) ){
          stop( sprintf( "file not found: '%s' ", scriptfile  ) )
}

trail<- if( length(args)>  2 ) paste( tail( args, -2 ), sep = " " ) else ""
cmd<- sprintf( '"%s" %s', scriptfile, trail )
system( cmd )


--
Romain Francois
Professional R Enthusiast
+33(0) 6 28 91 30 30
http://romainfrancois.blog.free.fr
|- http://tr.im/vzip : Code Snippet : List of CRAN packages
|- http://tr.im/vsK1 : R parser package on CRAN
`- http://tr.im/vshK : Transfer files through Rserve

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to