当前位置: 技术问答>linux和unix
请教shell scripts
来源: 互联网 发布时间:2015-11-20
本文导语: /etc/profile文件的第一个函数 pathmunge () { if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then if [ "$2" = "after" ] ; then PATH=$PATH:$1 else ...
/etc/profile文件的第一个函数
pathmunge () {
if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then
if [ "$2" = "after" ] ; then
PATH=$PATH:$1
else
PATH=$1:$PATH
fi
fi
}
想问一下这句是什么意思:! echo $PATH | /bin/egrep -q "(^|:)$1($|:)"
还有,使用if的时候有的时候有中括号,有的时候没有,什么时候应该使用?
pathmunge () {
if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then
if [ "$2" = "after" ] ; then
PATH=$PATH:$1
else
PATH=$1:$PATH
fi
fi
}
想问一下这句是什么意思:! echo $PATH | /bin/egrep -q "(^|:)$1($|:)"
还有,使用if的时候有的时候有中括号,有的时候没有,什么时候应该使用?
|
if [ ]是if test的缩写。
!在后边的表达式为false时if的条件为true。
!在后边的表达式为false时if的条件为true。
|
$PATH是系统环境变量,定义命令的搜索路径
zengwujun的解释有问题
echo $PATH | /bin/egrep -q "(^|:)$1($|:)" 是一起的,那个|是管道命令
zengwujun的解释有问题
echo $PATH | /bin/egrep -q "(^|:)$1($|:)" 是一起的,那个|是管道命令