Mini Shell

Direktori : /usr/share/Modules/init/
Upload File :
Current File : //usr/share/Modules/init/sh

# shellcheck shell=sh

unset _mlshdbg;
# disable shell debugging for the run of this init file
if [ "${MODULES_SILENT_SHELL_DEBUG:-0}" = '1' ]; then
   # immediately disable debugging to echo the less number of line possible
   case "$-" in
      *v*x*) set +vx; _mlshdbg='vx' ;;
      *v*) set +v; _mlshdbg='v' ;;
      *x*) set +x; _mlshdbg='x' ;;
      *) _mlshdbg='' ;;
   esac;
fi;

# define modules runtime quarantine configuration
export MODULES_RUN_QUARANTINE='LD_LIBRARY_PATH LD_PRELOAD'

# setup quarantine if defined
unset _mlre _mlIFS;
if [ -n "${IFS+x}" ]; then
   _mlIFS=$IFS;
fi;
IFS=' ';
for _mlv in ${MODULES_RUN_QUARANTINE:-}; do
   if [ "${_mlv}" = "${_mlv##*[!A-Za-z0-9_]}" ] && [ "${_mlv}" = "${_mlv#[0-9]}" ]; then
      if [ -n "$(eval 'echo ${'"$_mlv"'+x}')" ]; then
         _mlre="${_mlre:-}__MODULES_QUAR_${_mlv}='$(eval 'echo ${'"$_mlv"'}')' ";
      fi;
      _mlrv="MODULES_RUNENV_${_mlv}";
      _mlre="${_mlre:-}${_mlv}='$(eval 'echo ${'"$_mlrv"':-}')' ";
   fi;
done;
if [ -n "${_mlre:-}" ]; then
   _mlre="eval ${_mlre}__MODULES_QUARANTINE_SET=1 ";
fi;

# define module command and surrounding initial environment (default value
# for MODULESHOME, MODULEPATH, LOADEDMODULES and parse of init config files)
# shellcheck disable=2086 # word splitting expected on _mlre
_mlcode=$(${_mlre:-}/usr/bin/tclsh '/usr/share/Modules/libexec/modulecmd.tcl' sh autoinit)
_mlret=$?

# clean temp variables used to setup quarantine
if [ -n "${_mlIFS+x}" ]; then
   IFS=$_mlIFS;
   unset _mlIFS;
else
   unset IFS;
fi;
unset _mlre _mlv _mlrv

# no environment alteration if the above autoinit command failed
if [ $_mlret -eq 0 ]; then
   eval "$_mlcode"

   # if sh is bash, export functions to get them defined in sub-shells
   if [ "${BASH:-}" != '' ]; then
      export -f _module_raw
      export -f module
      if [ "$(type -t ml)" = 'function' ]; then
         export -f ml
      fi
   fi
fi

unset _mlcode _mlret

# restore shell debugging options if disabled
if [ -n "${_mlshdbg:-}" ]; then
   set -"$_mlshdbg";
   unset _mlshdbg;
fi;

# vim:set tabstop=3 shiftwidth=3 expandtab autoindent syntax=sh :

Zerion Mini Shell 1.0