Stata The Stata listserver
[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

RE: st: RE: Cross-platform mobility


From   "Webb.Bayard" <Bayard.Webb@igt.com>
To   "'statalist@hsphsun2.harvard.edu'" <statalist@hsphsun2.harvard.edu>
Subject   RE: st: RE: Cross-platform mobility
Date   Mon, 22 Sep 2003 13:47:23 -0700

> 
> On 9/22/03 3:56 PM, "Nick Cox" <n.j.cox@durham.ac.uk> wrote:
> 
> > Danielle H. Ferry
> >> 
> >> Not sure if there is a solution to this, but I figured I'd
> >> throw it out
> >> there. I have an external hard drive which I use on both a
> >> Mac (OS X) and a
> >> PC (Win XP). I write all my Stata work to this HD. I
> >> sometimes call datasets
> >> or do-files from directories other than the one in which I
> >> am working. In
> >> this case, it is necessary to list the full pathname. The
> >> problem is that
> >> the pathname is specified with ":" as separators (i.e.,
> >> :hd:bigdirectory:smallerdirectory:filename.do) on a Mac but
> >> with "\" on a PC
> >> (i.e., C:\bigdirectory\smallerdirectory\filename.do).
> >> Notice also, that a
> >> Mac indicates the hard drive name by putting a ":" in front
> >> of the pathname
> >> and a PC specifies the hard drive name by putting a ":\"
> >> after the hard
> >> drive name. Much thanks for any ideas!
> > 
> > I am not clear quite how this is biting you,
> > but Stata provides a dirsep which depends on
> > your platform. 
> > 
> > In Stata 7, this is accessed by `: dirsep'
> > and in Stata 8 by `c(dirsep)'.
> > 
> > Nick 
> > n.j.cox@durham.ac.uk
> 
> I don't understand what you are referring to. The problem I 
> have is that
> suppose I write a do-file that has one line that looks like this:
> 
> use :C:stata:auto, clear
> 
> This will work fine when I run on my Mac. If I try to run on 
> a PC, however,
> I will have to change the line to:
> 
> use C:\stata\auto, clear
> 
> Each time I go back and forth between the Mac & PC, I will 
> have to change
> the way the pathname is specified.
> 
> -Danielle

I think you construct a string representing the pathname using c(dirsep)
instead of a particular symbol, then when the command is run, Stata reurns
the OS-specific character, builds the appropriate string and can access the
intended file.

I haven't done it, but a look at the help for c(dirsep) certainly leads in
that direction. Maybe someone with cross-platform experience can clarify.


> *
> *   For searches and help try:
> *   http://www.stata.com/support/faqs/res/findit.html
> *   http://www.stata.com/support/statalist/faq
> *   http://www.ats.ucla.edu/stat/stata/
> 
*
*   For searches and help try:
*   http://www.stata.com/support/faqs/res/findit.html
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/



© Copyright 1996–2021 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index