This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: rsync and cygwin paths

At 10:06 2003-06-04, Igor Pechtchanski wrote:
On Wed, 4 Jun 2003, Lapo Luchini wrote:

> ...
> Please notice that there is a default prgoramm called "cygpath" that's
> really useful to convert path- and file-names between the two version,
> and it's not so hard to create "wrapper scripts" to convert them, e.g.
> (I copied this long ago from I-don't-remember-where):
> for arg in $@ ;
> do
>   if [ -e "${arg}" ]; then
>     NEWARGS="${NEWARGS} `cygpath -p -w "$arg"`"
>   else
>     NEWARGS="${NEWARGS} $arg"
>   fi
> done


Note that the above won't work correctly if the program is expected to
create the file with a given name...  IMO, there is no way of writing a
generic wrapper script without knowing anything about program parameters.


Strictly speaking, that's true. Certainly Lapo's script fragment is too simple-minded to work in any kind of general setting.

However for many purposes it's feasible to write some simple-minded heuristics that make the determination about when and how to apply "cygpath." I currently use a BASH script that uses a simple "case" statement to paper over the Cygwin / Windows interface for invoking the Java 2 SDK tools. The case statement's glob patterns detect whether any given argument is (probably) a file name or PATH-like entity and then applies cygpath as necessary. It can be fooled, of course, but in practice it works fine for me.

Randall Schulz

-- Unsubscribe info: Problem reports: Documentation: FAQ:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]