An embedded and charset-unspecified text was scrubbed... Name: not available URL: <https://stat.ethz.ch/pipermail/r-devel/attachments/20090805/dab93b99/attachment.pl>
exec subdirectory of a package
2 messages · Romain Francois
2 days later
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