From: Guillaume Marcais Date: 2004-04-03T10:37:22+09:00 Subject: Re: ruby, cygwin and paths On Fri, 2004-04-02 at 20:17, Hal Fulton wrote: > Guillaume Marcais wrote: > > This is almost not a ruby question... But I need a ruby solution! > > > > How to convert a 8.3 dos paths to its fully expanded version. For > > example, how to translate: > > > > C:\\CYGWIN\\HOME\MYFULL~1\MONROE~9.ALT > > > > to > > > > /cygdrive/c/cygwin/home/My Full Name/Monroe-Tyson.alt > > > > The basename of this last path is relevant to me and while MONROE~9 is > > unusable. cygpath -u, from the cygwin distribution, doesn't expand the > > 8.3 names. It merely changes the \\ into /. How fancy! > > > > Any solution out there? > > There's always the "ugly" way -- don't say you heard it here. > > Something like: > > path = `cmd /c dir #{file}`.split("\n")[6][-1] > > That's untested. I guess I'll settle for sliglthly improved: path = `cmd /c dir /b #{file}` The /b is the bare format: only the name. Thanks all. Guillaume. > > Hal > > >