in reply to Looking for command-line UNIX-like 'tar' for Windows

I don't get it, why won't cygwin work? That's what I use.
  • Comment on Re: Looking for command-line UNIX-like 'tar' for Windows

Replies are listed 'Best First'.
Re: Re: Looking for command-line UNIX-like 'tar' for Windows
by John M. Dlugosz (Monsignor) on Jan 09, 2003 at 04:27 UTC
    The reply from bbfu indicates I may have been wrong. But other cygwin tools I've seen, namely cdrecord, uses a UNIX file system emulation. It has to have forward slashes and no drive letter, and uses another utility to "mount" whatever top-level directories you plan to use into its own tree. That looked like it was central to the cygwin system.

    —John

      Well, yes, cygwin does create a unix filesystem emulation layer, but that doesn't mean filenames themselves are any different, just the paths. Perhaps I'm misunderstanding what you mean by "native filenames." Also, cygwin includes a cygpath command that will translate between the emulated unix filesystem paths and the native win32 paths.

      If your problem was with the unix filesystem emulation layer, however, it would probably be best for you avoid having to worry about translation and just look at one of the other suggestions made elsewhere in this thread. I also think the Perl Power Tools suggestion by jsprat sounds like a good idea.

      bbfu
      Black flowers blossum
      Fearless on my breath

        That's what I mean by "native" file names. Something that appears when I hit the file name completion button; something that is pasted in when I drag the icon from explorer; the fully-qualified paths that I get from piping DIR/fsb to it.
      Wasn't your original question about using it with Perl's generated makefiles? Perl's build system should not have a problem with it.
        Because it only uses relative paths and consistantly uses forward-slashes for all names?

        Hmm, how does that port to a Mac? I figured most code would look up the correct separator character and/or use File::Spec to do the work.