In /usr/bin/gdiffmk line 23: CMD=`basename $0` ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: CMD=$(basename "$0") In /usr/bin/gdiffmk line 28: echo >&2 "${CMD}: $@" ^-- SC2145: Argument mixes string and array. Use * or separate argument. In /usr/bin/gdiffmk line 71: for arg ^-^ SC2034: arg appears unused. Verify use (or export if used externally). In /usr/bin/gdiffmk line 76: exit ${exitcode} ^---------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: exit "${exitcode}" In /usr/bin/gdiffmk line 92: Exit $1 "File '$2' not found." ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: Exit "$1" "File '$2' not found." In /usr/bin/gdiffmk line 96: Exit $1 "File '$2' not readable." ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: Exit "$1" "File '$2' not readable." In /usr/bin/gdiffmk line 117: Exit $1 "File '$2' not created; " \ ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: Exit "$1" "File '$2' not created; " \ In /usr/bin/gdiffmk line 118: "Cannot write directory '`dirname "$2"`'." ^------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: "Cannot write directory '$(dirname "$2")'." In /usr/bin/gdiffmk line 120: Exit $1 "File '$2' not writeable." ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: Exit "$1" "File '$2' not writeable." In /usr/bin/gdiffmk line 175: DIFFCMD=diff ^-----^ SC2209: Use var=$(command) to assign output (or quote to assign string). In /usr/bin/gdiffmk line 176: SEDCMD=sed ^----^ SC2209: Use var=$(command) to assign output (or quote to assign string). In /usr/bin/gdiffmk line 184: ADDMARK=`RequiresArgument "${OPTION}" "$2"` && ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: ADDMARK=$(RequiresArgument "${OPTION}" "$2") && In /usr/bin/gdiffmk line 188: CHANGEMARK=`RequiresArgument "${OPTION}" "$2"` && ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: CHANGEMARK=$(RequiresArgument "${OPTION}" "$2") && In /usr/bin/gdiffmk line 192: DELETEMARK=`RequiresArgument "${OPTION}" "$2"` && ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: DELETEMARK=$(RequiresArgument "${OPTION}" "$2") && In /usr/bin/gdiffmk line 199: MARK1=`RequiresArgument "${OPTION}" "$2"` && ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: MARK1=$(RequiresArgument "${OPTION}" "$2") && In /usr/bin/gdiffmk line 212: SEDCMD=`RequiresArgument "${OPTION}" "$2"` && ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: SEDCMD=$(RequiresArgument "${OPTION}" "$2") && In /usr/bin/gdiffmk line 216: DIFFCMD=`RequiresArgument "${OPTION}" "$2"` && ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: DIFFCMD=$(RequiresArgument "${OPTION}" "$2") && In /usr/bin/gdiffmk line 283: exec >$3 ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: exec >"$3" In /usr/bin/gdiffmk line 307: a\ ^-- SC1004: This backslash+linefeed is literal. Break outside single quotes if you just want to break the line. In /usr/bin/gdiffmk line 326: i\ ^-- SC1004: This backslash+linefeed is literal. Break outside single quotes if you just want to break the line. In /usr/bin/gdiffmk line 338: i\ ^-- SC1004: This backslash+linefeed is literal. Break outside single quotes if you just want to break the line. In /usr/bin/gdiffmk line 339: '"${MARK2}"'\ ^-- SC1004: This backslash+linefeed is literal. Break outside single quotes if you just want to break the line. In /usr/bin/gdiffmk line 342: a\ ^-- SC1004: This backslash+linefeed is literal. Break outside single quotes if you just want to break the line. In /usr/bin/gdiffmk line 351: i\ ^-- SC1004: This backslash+linefeed is literal. Break outside single quotes if you just want to break the line. In /usr/bin/gdiffmk line 352: '"${MARK2}"'\ ^-- SC1004: This backslash+linefeed is literal. Break outside single quotes if you just want to break the line. In /usr/bin/gdiffmk line 355: a\ ^-- SC1004: This backslash+linefeed is literal. Break outside single quotes if you just want to break the line. For more information: https://www.shellcheck.net/wiki/SC2145 -- Argument mixes string and array. ... https://www.shellcheck.net/wiki/SC2034 -- arg appears unused. Verify use (o... https://www.shellcheck.net/wiki/SC2209 -- Use var=$(command) to assign outp...