diff options
| author | Paul Jones <paulj@lshift.net> | 2009-08-03 13:48:58 +0100 |
|---|---|---|
| committer | Paul Jones <paulj@lshift.net> | 2009-08-03 13:48:58 +0100 |
| commit | b482ac70be2902b845cdfdea38fa6e7e80984f16 (patch) | |
| tree | 41e21887060eb67a5088f99360f8eeabbd173199 | |
| parent | 4bedf0ea86889fcdb46d34fe777febcb77ec68c1 (diff) | |
| download | rabbitmq-server-git-b482ac70be2902b845cdfdea38fa6e7e80984f16.tar.gz | |
Eliminated parsing of ls output
| -rwxr-xr-x | scripts/rabbitmq-env | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/scripts/rabbitmq-env b/scripts/rabbitmq-env index 9ffa730224..ac3b77da91 100755 --- a/scripts/rabbitmq-env +++ b/scripts/rabbitmq-env @@ -33,12 +33,16 @@ # Determine where this script is really located SCRIPT_PATH="$0" while [ -h "$SCRIPT_PATH" ] ; do - ls=`ls -ld "$SCRIPT_PATH"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - SCRIPT_PATH="$link" + FULL_PATH=`readlink -f $SCRIPT_PATH 2>/dev/null` + if [ "$?" != "0" ]; then + REL_PATH=`readlink $SCRIPT_PATH` + if expr "$REL_PATH" : '/.*' > /dev/null; then + SCRIPT_PATH="$link" + else + SCRIPT_PATH="`dirname "$SCRIPT_PATH"`/$REL_PATH" + fi else - SCRIPT_PATH="`dirname "$SCRIPT_PATH"`/$link" + SCRIPT_PATH=$FULL_PATH fi done |
