#!/bin/sh
#
# ax-common.sh -- Common Functions for Shell Scripts
-# Copyright (c)2013-2017 Alexander Barton (alex@barton.de)
+# Copyright (c)2013-2018 Alexander Barton (alex@barton.de)
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# shellcheck disable=SC2034
ax_common_sourced=2
-# Display a colored message.
+# Display a colored message (a plain message, when not writing to a terminal).
# $1 Level: -=title, 0=ok, 1=warning, 2=error.
# $2 Word(s) to highlight.
# $3-n Remaining word(s). [optional]
"-") c="1"; shift; ;; # bold
*) c="0";
esac
- # print colored word(s):
- printf "\033[0;%sm%s\033[0m " "${c}" "${1}"
+ if [ -t 1 ]; then
+ # writing to a terminal, print colored word(s):
+ printf "\\033[0;%sm%s\\033[0m " "${c}" "${1}"
+ else
+ # print plain text:
+ printf "%s " "${1}"
+ fi
shift
# print remaining word(s) and trailing newline:
echo "${*}"
ax_error() {
if [ "$1" = "-l" ]; then
shift
- if [ -n "$NAME" ]; then
- logger -t "$NAME" "$*"
- else
- logger "$*"
- fi
+ logger -t "${NAME:-${0##*/}}" -p err "$*"
fi
ax_msg1 2 "$*" >&2
}