mirror of
https://github.com/stefanocasazza/ULib.git
synced 2025-09-28 19:05:55 +08:00
141 lines
1.9 KiB
Bash
141 lines
1.9 KiB
Bash
#!/bin/sh
|
|
|
|
chk_ENV() {
|
|
|
|
if [ -z "${FILE_LOG}" ]; then
|
|
FILE_LOG=log
|
|
export FILE_LOG
|
|
fi
|
|
|
|
test -f "${FILE_LOG}" || touch "${FILE_LOG}"
|
|
|
|
if [ $? != 0 ]; then
|
|
echo "Unable to create log file \"${FILE_LOG}\"" >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z "${MSG_LOG}" ]; then
|
|
MSG_LOG="***** $1 *****"
|
|
export MSG_LOG
|
|
fi
|
|
if [ -z "${OPENSSL}" ]; then
|
|
OPENSSL="openssl"
|
|
export OPENSSL
|
|
fi
|
|
if [ ! -z "${ENGINE}" ]; then
|
|
ENGINE="-engine ${ENGINE}"
|
|
export ENGINE
|
|
fi
|
|
|
|
ESITO=0
|
|
export ESITO
|
|
}
|
|
|
|
begin_CMD() {
|
|
|
|
echo "$MSG_LOG: BEGIN ON " `date` >>${FILE_LOG}
|
|
|
|
if [ ! -z "${DEBUG}" -a "${DEBUG}" != "0" ]; then
|
|
echo \
|
|
"--- DEBUG INFORMATION ---
|
|
ENV[HOME] = \"${HOME}\"
|
|
ENV[FILE_LOG] = \"${FILE_LOG}\"
|
|
ENV[MSG_LOG] = \"${MSG_LOG}\"
|
|
ENV[OPENSSL] = \"${OPENSSL}\"
|
|
ENV[ENGINE] = \"${ENGINE}\"
|
|
${DEBUG_INFORMATION}--- DEBUG INFORMATION ---" >>${FILE_LOG}
|
|
fi
|
|
|
|
STR_CMD=COMMAND
|
|
export STR_CMD
|
|
}
|
|
|
|
echo_CMD() {
|
|
|
|
echo $STR_CMD: $1 >>${FILE_LOG}
|
|
}
|
|
|
|
print_CMD() {
|
|
|
|
if [ -z "$2" ]; then
|
|
eval echo $STR_CMD: $1 >>${FILE_LOG}
|
|
else
|
|
echo "$STR_CMD: $1 > $2" >>${FILE_LOG}
|
|
fi
|
|
}
|
|
|
|
exec_CMD() {
|
|
|
|
if [ -z "$2" ]; then
|
|
eval $1 2>>${FILE_LOG}
|
|
else
|
|
eval $1 > $2 2>>${FILE_LOG}
|
|
fi
|
|
}
|
|
|
|
print_exec_CMD() {
|
|
|
|
print_CMD "$1" $2
|
|
exec_CMD "$1" $2
|
|
}
|
|
|
|
end_CMD() {
|
|
|
|
if [ -n "${EXIT_CMD}" ]; then
|
|
STR_CMD=EXIT_COMMAND
|
|
print_exec_CMD "$EXIT_CMD"
|
|
fi
|
|
|
|
if [ -n "$1" ]; then
|
|
ESITO=$1
|
|
fi
|
|
|
|
echo "$MSG_LOG: END WITH CODE $ESITO ON "`date` >>${FILE_LOG}
|
|
|
|
exit ${ESITO}
|
|
}
|
|
|
|
check_CMD() {
|
|
|
|
ESITO=$?
|
|
|
|
if [ $ESITO -ne 0 -a -n "${EXIT_CMD}" ]; then
|
|
STR_CMD=EXIT_COMMAND
|
|
print_exec_CMD "$EXIT_CMD"
|
|
unset EXIT_CMD
|
|
end_CMD
|
|
fi
|
|
}
|
|
|
|
run_CMD() {
|
|
|
|
print_exec_CMD "$1" $2
|
|
check_CMD
|
|
}
|
|
|
|
proc_CMD() {
|
|
|
|
begin_CMD
|
|
run_CMD "$1"
|
|
end_CMD
|
|
}
|
|
|
|
# extra
|
|
|
|
run_CMD_with_input() {
|
|
|
|
echo_CMD "$2"
|
|
$2 <<END >>${FILE_LOG} 2>>${FILE_LOG}
|
|
$1
|
|
END
|
|
check_CMD
|
|
}
|
|
|
|
run_CMD_with_output() {
|
|
|
|
echo_CMD "$2"
|
|
STR_CMD="OUTPUT "
|
|
run_CMD "$1=\"`$2`\""
|
|
STR_CMD=COMMAND
|
|
}
|