[R] how can I write code to detect whether the machine is Windows or Linux?

Marc Schwartz marc_schwartz at comcast.net
Thu Jul 24 00:13:01 CEST 2008


on 07/23/2008 04:53 PM Philip James Smith wrote:
> Hi R-People:
> 
> I use 2 machines: a machine with a Windows XP operating system, and 
> another with a Linux Ubuntu OS. I transport my code between these 2 
> machines. However, pathnames to data files always need to be "adjusted" 
> to account for the OS that I'm working on.
> 
> Here is my question:
> 
> How do I write code to detect whether I'm using the XP or the Linux 
> machine?
> 
> If I knew this, I could write my code in a way so that I didn't have to 
> adjust path names to data file all the time.
> 
> I checked the archives... didn't find anything, but perhaps didn't know 
> the right search terms...
> 
> Thanks for your help, R-community! Please respond to: 
> philipsmith at alumni.albany.edu

See ?.Platform

For example:

 > .Platform$OS
[1] "unix"

It's always dangerous to say always, but "in general", the use of:

   Path/To/File

with *forward* slashes, will work on both Windows and Linux, including 
the use of relative paths.

See:

http://cran.r-project.org/doc/FAQ/R-FAQ.html#How-do-file-names-work-in-Windows_003f

and
 
http://cran.r-project.org/bin/windows/base/rw-FAQ.html#R-can_0027t-find-my-file

for some hints.

HTH,

Marc Schwartz



More information about the R-help mailing list