summaryrefslogtreecommitdiffstats
path: root/config.tests/unix/which.test
blob: 37c858c2f7d015add010092b9fb1b4ed85209910 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#!/bin/sh

HOME=/dev/null
export HOME

unset which

WHICH=`which which 2>/dev/null`
if echo $WHICH | grep 'shell built-in command' >/dev/null 2>&1; then
    WHICH=which
elif [ -z "$WHICH" ]; then
    if which which >/dev/null 2>&1; then
	WHICH=which
    else
	for a in /usr/ucb /usr/bin /bin /usr/local/bin; do
	    if [ -x $a/which ]; then
		WHICH=$a/which
		break;
	    fi
	done
    fi
fi

if [ -z "$WHICH" ]; then
    IFS=:
    for a in $PATH; do
	if [ -x $a/$1 ]; then
	    echo "$a/$1"
	    exit 0
	fi
    done
else
    a=`"$WHICH" "$1" 2>/dev/null`
    if [ ! -z "$a" -a -x "$a" ]; then
	echo "$a"
	exit 0
    fi
fi
exit 1