#!/bin/bash . /etc/profile # export all functions set -a ## Include functions for bashfunc in $(find /etc/bash/gaboshlib -type f -name "g_*.bashfunc" -o -name "g_*.sh") do #echo $bashfunc . "$bashfunc" done ## # if runnign directly from shell if echo $0 | egrep -q '^-bash$|^-su$' then g_scriptname=bash else g_scriptname=$(basename $0) fi # TMPDIR [ -w /tmp ] && g_tmp=/tmp df -h /tmp | grep -q tmpfs && g_tmp=~/.g_tmp [ -w /data-crypt/share/tmp ] && g_tmp=/data-crypt/share/tmp g_tmp="$g_tmp/g_$g_scriptname-$$" [ -d "$g_tmp" ] || mkdir -p "$g_tmp" # START and EXIT Notification g_trap_exit="g_logger EXITING $g_scriptname ; rm -r $g_tmp" trap "$g_trap_exit" EXIT g_syslogtag="g_bash-script:$g_scriptname[$$]" [ $g_scriptname = "bash" ] || g_logger STARTING $g_scriptname # PATH [ -d /etc/thinclient/scripts ] && PATH=$PATH:/etc/thinclient/scripts # red STDERR output exec 9>&2 exec 8> >( while IFS='' read -r line || [ -n "$line" ]; do echo -e "\033[31m${line}\033[0m" done ) function undirect(){ exec 2>&9; } function redirect(){ exec 2>&8; } trap "redirect;" DEBUG PROMPT_COMMAND='undirect;' # LANG for "." as decimal separator (and not e.g. in German ",") export LANG=en_US.UTF-8