Re: [PATCH] Fixed non portable use of expr and removed incorrect use of test -eq for string comparison
From: Uwe Kleine-König <hidden>
Date: 2016-06-15 22:43:30
Hello Junio, Junio C Hamano wrote:
Uwe Kleine-König [off-list ref] writes:quoted
Junio C Hamano wrote:quoted
By the way, I do not know if the use of "which" there is portable. Have Solaris folks tried this program ever?I don't count myself to "Solaris folks", even though I still use it to read and write my email. But anyhow I know some of the pitfalls... login@~ > /bin/bash --version GNU bash, version 3.00.16(1)-release (sparc-sun-solaris2.10) Copyright (C) 2004 Free Software Foundation, Inc. login@~ > /bin/bash zeisberg@login ~$ which httpd && echo successful no httpd in /home/zeisberg/bin /home/zeisberg/usr/bin /opt/bin /usr/local/graphics/bin /usr/local/gnu/bin /usr/local/bin /usr/local/X11R6/bin /usr/xpg4/bin /usr/bin /usr/ccs/bin /usr/sbin /usr/ucb /usr/openwin/bin successfulThanks. Somebody else tried: found=`which "$command"` if test -n "$found" then ... use $found as the full path to the command fi and got burned because "no httpd in ..." comes to the stdout!
That was someting I planed to mention in my email but obviously I forgot.
I did not exactly recall if there was an issue with the exit status, but your demonstration shows that the status is also useless. We _could_ do something ugly and pointless like: test -f `which "$command"` but I'd say I prefer the alternative I sent out at that point.
Ack. -- Uwe Kleine-König http://www.google.com/search?q=gravity+on+earth%3D