请问这个函数是何意?--出自/etc/profile
用的是Magic Linux 1.1 Final下面是/etc/profile全文,想请问一下,开头那个函数是什么意思,有何作用,谢谢各位。
另,还请指教一下,那些注解对不对,如果不对,还请多多指教。谢谢。
# /etc/profile
# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc
pathmunge () {
if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then
if [ "$2" = "after" ] ; then
PATH=$PATH:$1
else
PATH=$1:$PATH
fi
fi
}
# Path manipulation
if [ `id -u` = 0 ]; then
pathmunge /sbin
pathmunge /usr/sbin
pathmunge /usr/local/sbin
fi
pathmunge /usr/X11R6/bin after
unset pathmunge
# No core files by default
ulimit -S -c 0 > /dev/null 2>&1
#默认不生成core文件
#ulimit -S,设定资源的软限制(soft limit),即用户在硬限制范围内自行再加上的限制)
#硬限制:管理员所设置的限制
#ulimit -c,设定core文件的值为0。如果为非0的正数,则表示最大值。
USER="`id -un`"
#把用户名(由命令"id -un"查询得到)赋给变量USER
LOGNAME=$USER
#USER的值被赋给变量LOGNAME
MAIL="/var/spool/mail/$USER"
#将到收件箱(存储新邮件)的路径赋给MAIL变量
HOSTNAME=`/bin/hostname`
#将用户主机名(由命令"/bin/hostname"运行得到)赋给变量HOSTNAME
HISTSIZE=1000
#设定HOSTNAME变量为1000。
#HISTSIZE是用来控制历史记录的数量的。shell退出后,shell将历史记录记录在历史文件(~/.bash_history)中
if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then
INPUTRC=/etc/inputrc
fi
#如果INPUTRC文件为0字节,并且用户目录下的.inputrc文件($HOME/.inputrc)不是一个普通文件,则给INPUTRC变量赋值/etc/inputrc
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC
#导出这些变量为全局变量。这些变量可以被子进程调用。
for i in /etc/profile.d/*.sh ; do
if [ -r "$i" ]; then
. $i
fi
done
#for循环,及嵌套的if语句
#如果目录/etc/profile.d下存在以.sh结尾的文件,并且该文件可读,就执行这个文件。
unset i
#变量i被复位。也就是说,将它从shell的名字作用域中删除。
#i的值是在for循环里获得的,加入该循环被顺利地为所有赋值的话。
增加 PATH 变量 javalee大哥也来了啊 :-D
不过,可否说得详细些呢?小弟水平太差了些,还请多多指教,谢谢了
页:
[1]