gaboshlib/gaboshlib.include
2023-01-17 08:52:56 +01:00

52 lines
1.1 KiB
Bash

#!/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;'