In /usr/bin/dotty line 8: usage='echo "usage: dotty [-V] [-lm (sync|async)] [-el (0|1)] <filename>"' ^-- SC2089: Quotes/backslashes will be treated literally. Rewrite using set/"$@" or functions. In /usr/bin/dotty line 11: set -- $DOTTYOPTIONS $* ^-----------^ SC2086: Double quote to prevent globbing and word splitting. ^-- SC2048: Use "$@" (with quotes) to prevent whitespace problems. ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: set -- "$DOTTYOPTIONS" "$*" In /usr/bin/dotty line 29: if [ "x$LMODE" != 'xsync' -a "x$LMODE" != 'xasync' ]; then ^-- SC2166: Prefer [ p ] && [ q ] as [ p -a q ] is not well defined. In /usr/bin/dotty line 30: $usage ^----^ SC2090: Quotes/backslashes in this variable will not be respected. In /usr/bin/dotty line 38: if [ "x$MLEVEL" != 'x0' -a "x$MLEVEL" != 'x1' ]; then ^-- SC2166: Prefer [ p ] && [ q ] as [ p -a q ] is not well defined. In /usr/bin/dotty line 39: $usage ^----^ SC2090: Quotes/backslashes in this variable will not be respected. In /usr/bin/dotty line 45: FILES=`echo $FILES \"$1\"` ^------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^------------------^ SC2116: Useless echo? Instead of 'cmd $(echo foo)', just use 'cmd foo'. ^----^ SC2086: Double quote to prevent globbing and word splitting. ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: FILES=$(echo "$FILES" \""$1"\") In /usr/bin/dotty line 49: $usage ^----^ SC2090: Quotes/backslashes in this variable will not be respected. In /usr/bin/dotty line 53: FILES=`echo $FILES \"$1\"` ^------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^------------------^ SC2116: Useless echo? Instead of 'cmd $(echo foo)', just use 'cmd foo'. ^----^ SC2086: Double quote to prevent globbing and word splitting. ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: FILES=$(echo "$FILES" \""$1"\") In /usr/bin/dotty line 65: CMDS="dotty.protogt.layoutmode = '$LMODE';" ^--------------------------^ SC2089: Quotes/backslashes will be treated literally. Rewrite using set/"$@" or functions. In /usr/bin/dotty line 67: CMDS=`echo $CMDS dotty.mlevel = $MLEVEL";"` ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC2116: Useless echo? Instead of 'cmd $(echo foo)', just use 'cmd foo'. ^---^ SC2090: Quotes/backslashes in this variable will not be respected. ^---^ SC2086: Double quote to prevent globbing and word splitting. ^-----^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: CMDS=$(echo "$CMDS" dotty.mlevel = "$MLEVEL"";") In /usr/bin/dotty line 70: CMDS=`echo $CMDS load \("'"$loadfile"'"\)";"` ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC2116: Useless echo? Instead of 'cmd $(echo foo)', just use 'cmd foo'. ^---^ SC2086: Double quote to prevent globbing and word splitting. ^-------^ SC2027: The surrounding quotes actually unquote this. Remove or escape them. ^-------^ SC2086: Double quote to prevent globbing and word splitting. ^-- SC2140: Word is of the form "A"B"C" (B indicated). Did you mean "ABC" or "A\"B\"C"? Did you mean: CMDS=$(echo "$CMDS" load \("'""$loadfile""'"\)";") In /usr/bin/dotty line 78: CMDS=`echo $CMDS $FUNC \($i, "'"file"'", null, null\)";"` ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC2116: Useless echo? Instead of 'cmd $(echo foo)', just use 'cmd foo'. ^---^ SC2086: Double quote to prevent globbing and word splitting. ^--^ SC2140: Word is of the form "A"B"C" (B indicated). Did you mean "ABC" or "A\"B\"C"? Did you mean: CMDS=$(echo "$CMDS" $FUNC \($i, "'"file"'", null, null\)";") In /usr/bin/dotty line 81: leftypath=`which lefty` ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: leftypath=$(which lefty) In /usr/bin/dotty line 89: exec $leftypath $FLAGS -e " ^--------^ SC2086: Double quote to prevent globbing and word splitting. ^----^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: exec "$leftypath" "$FLAGS" -e " For more information: https://www.shellcheck.net/wiki/SC2027 -- The surrounding quotes actually u... https://www.shellcheck.net/wiki/SC2048 -- Use "$@" (with quotes) to prevent... https://www.shellcheck.net/wiki/SC2089 -- Quotes/backslashes will be treate...