This is the mail archive of the cygwin 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: Pass windows-style paths to the interpreter from the shebang line ?

On Nov  9 15:39, Timothy Madden wrote:
> Hello
> I would like to write a php script to run from my cygwin command line.
> I have the php CLI executable (php.exe) in PATH and I use
> 	#!/bin/env php
> as the first line of the .php script, and make it executable.
> The problem is that bash will than invoke the Win32 native php.exe
> binary with the Cygwin-style path of my script as the argument,
> and then php complains that it:
> `Could not open input file: /home/Adrian/usr/local/bin/parseLog.phpÂ
> Which is normal for php.exe, as it does not understand cygwin paths.
> I found no way around this problem. I would type `php /scriptname/Â
> myself but then the script name would no longer be searched on PATH
> and I would have to type
> 'D:\Local\cygwin\home\Adrian\usr\local\bin\parseLog.php' as the
> script name at all times.
> Is there a way around this ? Can cygwin detect the executable is not
> a cygwin application add pass in the right path name ?

That's not as easy as it may sound.  What about creating wrapper scripts
with the same name in another dir and put that dir in front of the other
bin dir in $PATH?  The wrapper scripts could be shell scripts which use
`cygpath -wa' to convert the path to DOS notation and then call php.

I'm surprised that we don't have php in the Cygwin distro.  Did nobody
try to port php to Cygwin yet?


Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

Problem reports:
Unsubscribe info:

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