In /usr/bin/exmenen line 28: if [ -z $2 ]; then ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: if [ -z "$2" ]; then In /usr/bin/exmenen line 30: echo -n "Your choices are: " ^-- SC2039: In POSIX sh, echo flags are undefined. In /usr/bin/exmenen line 31: ls $EXTRAMENUDIR/*.menu | \ ^---------------------^ SC2012: Use find instead of ls to better handle non-alphanumeric filenames. In /usr/bin/exmenen line 33: echo -n "Extra menu name? " ^-- SC2039: In POSIX sh, echo flags are undefined. In /usr/bin/exmenen line 34: read MENUNAME ^--^ SC2162: read without -r will mangle backslashes. In /usr/bin/exmenen line 39: if [ -e $MENUDIR/$MENUNAME.menu ]; then ^------^ SC2086: Double quote to prevent globbing and word splitting. ^-------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: if [ -e "$MENUDIR"/"$MENUNAME".menu ]; then In /usr/bin/exmenen line 44: if ! [ -e $EXTRAMENUDIR/$MENUNAME.menu ]; then ^-------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: if ! [ -e $EXTRAMENUDIR/"$MENUNAME".menu ]; then In /usr/bin/exmenen line 49: mkdir -p -m 0700 $MENUDIR ^-- SC2174: When used with -p, -m only applies to the deepest directory. ^------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: mkdir -p -m 0700 "$MENUDIR" For more information: https://www.shellcheck.net/wiki/SC2039 -- In POSIX sh, echo flags are undef... https://www.shellcheck.net/wiki/SC2174 -- When used with -p, -m only applie... https://www.shellcheck.net/wiki/SC2012 -- Use find instead of ls to better ...