inpath

#! /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
                        result=0
                fi
        done

        IFS=$oldIFS
        return $result
}

checkForCmdInPath()
{
        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

checkForCmdInPath "$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

image.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 出了高铁站后,我拉着皮箱一路颠簸才回到家,那已是晚上六点,我的肚子也不争气的咕噜咕噜直叫。爸妈不在家,我并不奇怪,...
    涵可可阅读 2,118评论 0 0
  • 我打赌你猜不出原因 与天气无关 天已放晴 昨晚的狂风暴雨无影无踪 与巴士无关 巴士上寥寥几人 宽敞得可以玩猴戏 与...
    徐汉洲阅读 3,184评论 0 3
  • “妈妈,你为什么都不帮我?” 多年前女儿说的这句话,至今想来都让我心痛。 同事到我家来做客。同事的儿子小宝和我家米...
    米妈有话说阅读 5,208评论 0 0
  • 昨天做了个测试,过程中发现自己有个比较大的问题:总是在计划,落实的却不多。这可能是很多人都会犯的错误,但是此时此刻...
    瑞迪创始人王芳阅读 1,693评论 0 0
  • 今天和大家分享我的故事,在往下读之前,请做好心理准备,因为以下内容或者让你厌恶,或者让你愤怒。不过既然来看这篇文章...
    梦里开的花阅读 10,129评论 1 1

友情链接更多精彩内容