On 09/21/2012 12:21 AM, Chris Angelico wrote:
On Fri, Sep 21, 2012 at 7:47 AM, Mark Lawrence <breamore...@yahoo.co.uk> wrote:
On 20/09/2012 22:06, Gelonida N wrote:

I'd like to implement the equivalent functionality of the unix command
/usr/bin/which

The function should work under Linux and under windows.

Did anybody already implement such a function.

Searching found nothing obvious to me :(

I was afraid so, but wanted to be sure

If not, is there a portable way of splitting the environment variable
PATH?
With os.sep ?

os.sep is the directory separator, but os.pathsep may be what you
want.

Thanks,
os.pathsep was the missing piece for portably splitting the searchpath

 Between that and os.getenv('path') you can at least get the
directories. Then on Windows, you also need to check out
os.getenv('pathext') and split _that_ on the semicolon, and try each
of those as a file extension. I'm not sure whether or not Windows will
add extensions from pathext if one is given on the command line - for
instance, if typing "foo.exe" will search for "foo.exe.bat" - but the
basics are there.

For what I am doing I can even skip trying the pathexts, the ext is already given, but good to know :-)


Alternatively, there may be a Win32 API funct5ion that does this.
Would be worth a look.

Yeah true, but ideally I'd like to avoid platform detection and
just have a generic function.




--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to