82 lines
1.7 KiB
Bash
82 lines
1.7 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
readonly GREEN="\033[38;5;34m"
|
|
readonly MAGENTA="\033[38;5;127m"
|
|
readonly BLUE="\033[38;5;33m"
|
|
readonly YELLOW="\033[38;5;220m"
|
|
readonly RED="\033[38;5;160m"
|
|
|
|
readonly RESET="\033[0m"
|
|
|
|
##
|
|
# description: Logs the message with the correct prefix into the console
|
|
# usage: log <type> <message>
|
|
##
|
|
function log() {
|
|
local prefix
|
|
|
|
type=${1}
|
|
print=false
|
|
shift
|
|
message=$@
|
|
case ${type} in
|
|
"s")
|
|
print=true
|
|
prefix="${GREEN}[SUCCESS]${RESET}"
|
|
;;
|
|
"d")
|
|
if [[ "${debuglevel}" -ge 4 ]]; then
|
|
print=true
|
|
fi
|
|
prefix="${MAGENTA}[DEBUG]${RESET}"
|
|
;;
|
|
"i")
|
|
if [[ "${debuglevel}" -ge 1 ]]; then
|
|
print=true
|
|
fi
|
|
prefix="${BLUE}[INFO]${RESET}"
|
|
;;
|
|
"w")
|
|
if [[ "${debuglevel}" -ge 2 ]]; then
|
|
print=true
|
|
fi
|
|
prefix="${YELLOW}[WARN]${RESET}"
|
|
;;
|
|
"e")
|
|
if [[ "${debuglevel}" -ge 3 ]]; then
|
|
print=true
|
|
fi
|
|
prefix="${RED}[ERR]${RESET}"
|
|
;;
|
|
esac
|
|
|
|
"${print}" && echo -e "${prefix} ${message}"
|
|
return 0
|
|
}
|
|
|
|
function printc() {
|
|
colour="${1}"
|
|
shift
|
|
message=$@
|
|
case "${colour}" in
|
|
"g")
|
|
echo -ne "${GREEN}${message}${RESET}\n"
|
|
;;
|
|
"m")
|
|
echo -ne "${MAGENTA}${message}${RESET}\n"
|
|
;;
|
|
"b")
|
|
echo -ne "${BLUE}${message}${RESET}\n"
|
|
;;
|
|
"y")
|
|
echo -ne "${YELLOW}${message}${RESET}\n"
|
|
;;
|
|
"r")
|
|
echo -ne "${RED}${message}${RESET}\n"
|
|
;;
|
|
*)
|
|
log e "There is no such colour available!"
|
|
exit 1
|
|
;;
|
|
esac
|
|
}
|