LINUX中/ETC/PROFILE脚本的简要分析

# /etc/profile# System wide environment and startup programs, for login setup# Functions and aliases go in /etc/bashrcpathmunge () { #定义pathmunge函数,函数的作用是将一个路径添加到PATH变量中,如果PATH变量中已有此路径则不作操作 if ! echo $PATH | /bin/egrep -q “(^|:)$1($|:)” ; then if [ “$2” = “after” ] ; then PATH=$PATH:$1 else PATH=$1:$PATH fi fi}# ksh workaroundif [ -z “$EUID” -a -x /usr/bin/id ]; then #检查变量EUID,如果为NULL且/usr/bin/id可执行,则初始化变量EUID和UID EUID=`id -u` UID=`id -ru`fi# Path manipulationif [ “$EUID” = “0” ]; then #判断,如果是root用户,则将/sbin /usr/sbin /usr/local/sbin添加到PATH变量中 pathmunge /sbin pathmunge /usr/sbin pathmunge /usr/local/sbinfi# No core files by defaultulimit -S -c 0 > /dev/null 2>&1 #通过 -c 0参数,设置系统默认情况下不产生core文件if [ -x /usr/bin/id ]; then #通过/usr/bin/id命令,初始化变量USER LOGNAME MAIL USER=”`id -un`” LOGNAME=$USER MAIL=”/var/spool/mail/$USER”fiHOSTNAME=`/bin/hostname` #初始化HOSTNAMEHISTSIZE=1000 #表示当输入history命令时,最多显示多少命令if [ -z “$INPUTRC” -a ! -f “$HOME/.inputrc” ]; then #初始化INPUTRC变量,如果用户目录下没有.inputrc文件,将缺省使用/etc/inputrc INPUTRC=/etc/inputrcfiexport PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC #将上边初始化的几个变量设为环境变量for i in /etc/profile.d/*.sh ; do #执行/etc/profile.d/目录下所有脚本文件 if [ -r “$i” ]; then . $i fidoneunset i #最后删除此脚本中用到的变量和函数unset pathmunge

君子无故,玉不去身。

LINUX中/ETC/PROFILE脚本的简要分析

相关文章:

你感兴趣的文章:

标签云: