cygpath -m behaviour change
Andrey Repin
anrdaemon@yandex.ru
Mon Sep 16 22:03:00 GMT 2013
Greetings, David Griffiths!
>> Yes, that's exactly right, assuming that 'boo' doesn't exist.
> Hi, it happens even if boo does exist. To put it in context, the
> script in question was attempting to determine the current directory:
> CURRENT_DIR=$(cygpath -ma "${0}"/../)
> (I didn't write this script but I assume they did this for performance reasons.)
Glad you didn't... Because otherwise you would be the one to blame for the
problem.
$0 could easily NOT have any path, just a script name.
> But anyway, as you can see ${0} always exists.
Only theoretically.
Practice is that noone will bet a buck on it.
> I looked at the other thread but don't see an immediate connection as
> that was checking for non-existing path members.
If you want to obtain a full name of a running script, you'd need something
like this:
XXX="$(cygpath -au "$0")"
SCRIPT_NAME="$(readlink -fn "${XXX:-$0}")"
This is almost platform-independent, even. To the extent of readlink -f option
support.
--
WBR,
Andrey Repin (anrdaemon@yandex.ru) 17.09.2013, <00:19>
Sorry for my terrible english...
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
More information about the Cygwin
mailing list