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 :( > >> 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. 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. Alternatively, there may be a Win32 API funct5ion that does this. Would be worth a look. ChrisA -- http://mail.python.org/mailman/listinfo/python-list