123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- #!/bin/bash
- # inpath -- Проверяет допустимость пути к указанной программе
- # или ее доступность в каталогах из списка PATH
- in_path()
- {
- cmd=$1 ourpath=$2 result=1
- oldIFS=$IFS
- IFS=":"
- for directory in $ourpath
- do
- if [ -x $directory/$cmd ] ; then
- echo "Command '$cmd' found in '$directory'"
- result=0 # Если мы здесь, значит, команда найдена
- fi
- done
-
- IFS=$oldIFS
- return $result
- }
- checkForInPath()
- {
- var=$1
- if [ "$var" != "" ] ; then
- if [ "${var:0:1}" = "/" ] ; then
- if [ ! -x $var ] ; then
- return 1
- fi
- elif ! in_path $var "$PATH" ; then
- return 2
- fi
- fi
- }
- if [ $# -ne 1 ] ; then
- echo "Usage: $0 command" >&2
- exit 1
- fi
- checkForInPath "$1"
- case $? in
- # 0 ) echo "$1 found in PATH" ;;
- 1 ) echo "$1 not found or not executable" ;;
- 2 ) echo "$1 not found in PATH" ;;
- esac
- exit 0
|