add_path $HOME/bin add_path $HOME/perl PERL5LIB #### # @(#)Copyright (c) 1991 Simon J. Gerraty # # This file is provided in the hope that it will # be of use. There is absolutely NO WARRANTY. # Permission to copy, redistribute or otherwise # use this file is hereby granted provided that # the above copyright notice and this notice are # left intact. # # Modified by Dean Serenevy (2005) for more robust quoting # is $1 missing from $2 (or PATH) ? no_path() { eval "case \":\$${2-PATH}:\" in *:\"$1\":*) return 1;; *) return 0;; esac"; } # if $1 exists and is not in path, append it add_path() { [ -d ${1:-.} ] && no_path $* && eval ${2:-PATH}="\$${2:-PATH}:$1"; } # if $1 exists and is not in path, prepend it pre_path() { [ -d ${1:-.} ] && no_path $* && eval ${2:-PATH}="$1:\$${2:-PATH}"; } # if $1 is in path, remove it del_path() { no_path $* || eval ${2:-PATH}=`eval echo :'$'${2:-PATH}: | sed -e "s;:$1:;:;g" -e "s;^:;;" -e "s;:\$;;"`; }