LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1354|回复: 6

这句话if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)"什么意思

[复制链接]
发表于 2003-7-3 19:28:30 | 显示全部楼层 |阅读模式
pathman () {
        if ! echo $PATH | /bin/egrep -q "(^|$1($|" ; then
                if [ "$2" = "last" ] ; then
                        PATH=$PATH1
                else
                        PATH=$1PATH
                fi
        fi
}
这个函数的第一句话什么意思?
发表于 2003-7-3 20:09:25 | 显示全部楼层
搜索路径列表路径名的格式,如果路径名排列形式为|1|:,那么用!号将他的返回值求反.
我的理解感觉有问题,还是请大家讨论讨论吧~~;)
发表于 2003-7-4 21:21:45 | 显示全部楼层
这好像是lfs中的一个脚本。
发表于 2003-7-4 21:37:53 | 显示全部楼层
这是RH发行版里的一个内部函数
 楼主| 发表于 2003-7-5 21:12:18 | 显示全部楼层
这是我装blfs时系统配置时的一个脚本
在redhat下也有/etc/profile中的,大家看看什么意思
发表于 2003-7-5 23:48:56 | 显示全部楼层
[javalee//home/javalee]typeset -f
pathmunge() {
    if ! echo $PATH | /bin/egrep -q "(^|$1($|"
    then
        if [ "$2" = "after" ]
        then
            PATH=$PATH1
        else
            PATH=$1PATH
        fi
    fi
}
[javalee//home/javalee]
看着很眼熟!;)
发表于 2003-7-6 17:38:43 | 显示全部楼层
检查传入的第一参数($1)是否在 $PATH 中有定义,演示如下:
$ echo $PATH | egrep -q "(^|/no_this_path($|"
$ echo $?
1
$ echo $PATH | egrep -q "(^|/bin($|"
$ echo $?
0
$
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表