In /usr/bin/savelog line 88:
DATUM=`date +%Y%m%d%H%M%S`
      ^------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
DATUM=$(date +%Y%m%d%H%M%S)


In /usr/bin/savelog line 92:
prog=`basename $0`
     ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
               ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
prog=$(basename "$0")


In /usr/bin/savelog line 154:
	D) DATUM=$(date +$OPTARG) ;;
                         ^-----^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
	D) DATUM=$(date +"$OPTARG") ;;


In /usr/bin/savelog line 169:
shift $(($OPTIND - 1))
         ^-----^ SC2004: $/${} is unnecessary on arithmetic variables.


In /usr/bin/savelog line 176:
if [ -n "$COMPRESS" ] && [ -z "`which $COMPRESS`"  ]; then
                               ^---------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.
                                      ^-------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
if [ -n "$COMPRESS" ] && [ -z "$(which "$COMPRESS")"  ]; then


In /usr/bin/savelog line 207:
			if [ "$?" -ne 0 ]; then
                             ^--^ SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/savelog line 219:
		if [ "$?" -ne 0 ]; then
                     ^--^ SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/savelog line 229:
 	savedir=`dirname -- "$filename"`
                ^----------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
 	savedir=$(dirname -- "$filename")


In /usr/bin/savelog line 243:
 		if [ "$?" -ne 0 ]; then
                     ^--^ SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/savelog line 257:
	newname=`basename -- "$filename"`
                ^-----------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
	newname=$(basename -- "$filename")


In /usr/bin/savelog line 261:
	cycle=$(( $count - 1))
                  ^----^ SC2004: $/${} is unnecessary on arithmetic variables.


In /usr/bin/savelog line 266:
		cycle=$(( $cycle - 1 ))
                          ^----^ SC2004: $/${} is unnecessary on arithmetic variables.


In /usr/bin/savelog line 287:
			$COMPRESS $COMPRESS_OPTS "$newname.0"
                                  ^------------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
			$COMPRESS "$COMPRESS_OPTS" "$newname.0"


In /usr/bin/savelog line 295:
		$COMPRESS $COMPRESS_OPTS -- "$newname".[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]
                          ^------------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
		$COMPRESS "$COMPRESS_OPTS" -- "$newname".[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]


In /usr/bin/savelog line 300:
		cycle=$(( $count - 1))
                          ^----^ SC2004: $/${} is unnecessary on arithmetic variables.


In /usr/bin/savelog line 302:
			list=$(ls -t -- $newname.[0-9]* 2>/dev/null | sed -e 1,${cycle}d)
                               ^-- SC2012: Use find instead of ls to better handle non-alphanumeric filenames.
                                        ^------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
			list=$(ls -t -- "$newname".[0-9]* 2>/dev/null | sed -e 1,${cycle}d)


In /usr/bin/savelog line 304:
				rm -f -- $list
                                         ^---^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
				rm -f -- "$list"


In /usr/bin/savelog line 307:
			list=$(ls -t -- $newname.[0-9]*$DOT_Z 2>/dev/null | sed -e 1,${cycle}d)
                               ^-- SC2012: Use find instead of ls to better handle non-alphanumeric filenames.
                                        ^------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
			list=$(ls -t -- "$newname".[0-9]*$DOT_Z 2>/dev/null | sed -e 1,${cycle}d)


In /usr/bin/savelog line 309:
				rm -f -- $list
                                         ^---^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
				rm -f -- "$list"


In /usr/bin/savelog line 358:
	test "$quiet" -eq 1 || echo "Rotated \`$filename' at `date`."
                                                             ^----^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
	test "$quiet" -eq 1 || echo "Rotated \`$filename' at $(date)."

For more information:
  https://www.shellcheck.net/wiki/SC2012 -- Use find instead of ls to better ...
  https://www.shellcheck.net/wiki/SC2086 -- Double quote to prevent globbing ...
  https://www.shellcheck.net/wiki/SC2004 -- $/${} is unnecessary on arithmeti...