Skip to content

R system command does not work with objects/variables

4 messages · Brian Ripley, syrvn, Johann Hibschman

#
Hello!

with the R system command I would like to call a perl script which needs an
input directory and an output directory in form of a path. When I put in the
path directly it works. The script line looks as follows:

system("perl '../path1' '../path2' '../path3'")
	
If I store the path in a variable/object and call the perl script again it
does not run and I don't know how to overcome that issue.

p1 <- "../path1"
p2 <- "../path2"
p3 <- "../path3"

system("perl p1 p2 p3")

I also tried:

system("perl 'p1' 'p2' 'p3'")

Can anyone help?

Best,
syrvn

--
View this message in context: http://r.789695.n4.nabble.com/R-system-command-does-not-work-with-objects-variables-tp3762544p3762544.html
Sent from the R help mailing list archive at Nabble.com.
#
See ?paste
or use system2("perl", shQuote(c(p1, p2, p3)))
On Tue, 23 Aug 2011, syrvn wrote:

            

  
    
#
syrvn <mentor_ at gmx.net> writes:
You want something like:

  system(paste("perl", p1, p2, p3"))

Strings don't do interpolation by themselves; you need to tell R, via
the "paste" function, that you want to concatenate the strings together.

-Johann