In /usr/bin/debrelease line 26: PROGNAME=`basename $0` ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: PROGNAME=$(basename "$0") In /usr/bin/debrelease line 83: DEFAULT_DEBRELEASE_UPLOADER=dupload ^-------------------------^ SC2034: DEFAULT_DEBRELEASE_UPLOADER appears unused. Verify use (or export if used externally). In /usr/bin/debrelease line 84: DEFAULT_DEBRELEASE_DEBS_DIR=.. ^-------------------------^ SC2034: DEFAULT_DEBRELEASE_DEBS_DIR appears unused. Verify use (or export if used externally). In /usr/bin/debrelease line 85: DEFAULT_DEVSCRIPTS_CHECK_DIRNAME_LEVEL=1 ^-- SC2034: DEFAULT_DEVSCRIPTS_CHECK_DIRNAME_LEVEL appears unused. Verify use (or export if used externally). In /usr/bin/debrelease line 86: DEFAULT_DEVSCRIPTS_CHECK_DIRNAME_REGEX='PACKAGE(-.+)?' ^-- SC2034: DEFAULT_DEVSCRIPTS_CHECK_DIRNAME_REGEX appears unused. Verify use (or export if used externally). In /usr/bin/debrelease line 89: if [ "$1" = "--no-conf" -o "$1" = "--noconf" ]; then ^-- SC2166: Prefer [ p ] || [ q ] as [ p -o q ] is not well defined. In /usr/bin/debrelease line 101: eval $( ^-- SC2046: Quote this to prevent word splitting. In /usr/bin/debrelease line 109: [ -r $file ] && . $file ^---^ SC1090: Can't follow non-constant source. Use a directive to specify location. In /usr/bin/debrelease line 112: set | egrep "^(DEBRELEASE|DEVSCRIPTS)_") ^---^ SC2196: egrep is non-standard and deprecated. Use grep -E instead. In /usr/bin/debrelease line 122: DEBRELEASE_DEBS_DIR="`echo \"$DEBRELEASE_DEBS_DIR\" | sed -e 's%/\+%/%g; s%\(.\)/$%\1%;'`" ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: DEBRELEASE_DEBS_DIR="$(echo \"$DEBRELEASE_DEBS_DIR\" | sed -e 's%/\+%/%g; s%\(.\)/$%\1%;')" In /usr/bin/debrelease line 161: -a*) targetarch="`echo \"$1\" | sed -e 's/^-a//'`" ;; ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. ^--------------------------^ SC2001: See if you can use ${variable//search/replace} instead. Did you mean: -a*) targetarch="$(echo \"$1\" | sed -e 's/^-a//')" ;; In /usr/bin/debrelease line 162: -t*) targetgnusystem="`echo \"$1\" | sed -e 's/^-t//'`" ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. ^--------------------------^ SC2001: See if you can use ${variable//search/replace} instead. Did you mean: -t*) targetgnusystem="$(echo \"$1\" | sed -e 's/^-t//')" In /usr/bin/debrelease line 172: opt_debsdir="`echo \"$1\" | sed -e 's/^--debs-dir=//; s%/\+%/%g; s%\(.\)/$%\1%;'`" ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: opt_debsdir="$(echo \"$1\" | sed -e 's/^--debs-dir=//; s%/\+%/%g; s%\(.\)/$%\1%;')" In /usr/bin/debrelease line 176: opt_debsdir="`echo \"$1\" | sed -e 's%/\+%/%g; s%\(.\)/$%\1%;'`" ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: opt_debsdir="$(echo \"$1\" | sed -e 's%/\+%/%g; s%\(.\)/$%\1%;')" In /usr/bin/debrelease line 179: level="`echo \"$1\" | sed -e 's/^--check-dirname-level=//'`" ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC2001: See if you can use ${variable//search/replace} instead. Did you mean: level="$(echo \"$1\" | sed -e 's/^--check-dirname-level=//')" In /usr/bin/debrelease line 195: regex="`echo \"$1\" | sed -e 's/^--check-dirname-level=//'`" ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC2001: See if you can use ${variable//search/replace} instead. Did you mean: regex="$(echo \"$1\" | sed -e 's/^--check-dirname-level=//')" In /usr/bin/debrelease line 232: if [ `pwd` = "/" ]; then ^---^ SC2046: Quote this to prevent word splitting. ^---^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: if [ $(pwd) = "/" ]; then In /usr/bin/debrelease line 245: if [ -n "$buildArea" -a -d "$buildArea" ]; then ^-- SC2166: Prefer [ p ] && [ q ] as [ p -a q ] is not well defined. In /usr/bin/debrelease line 261: mustsetvar package "`dpkg-parsechangelog -SSource`" "source package" ^----------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: mustsetvar package "$(dpkg-parsechangelog -SSource)" "source package" In /usr/bin/debrelease line 262: mustsetvar version "`dpkg-parsechangelog -SVersion`" "source version" ^-----------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: mustsetvar version "$(dpkg-parsechangelog -SVersion)" "source version" In /usr/bin/debrelease line 264: if [ $CHECK_DIRNAME_LEVEL -eq 2 -o \ ^------------------^ SC2086: Double quote to prevent globbing and word splitting. ^-- SC2166: Prefer [ p ] || [ q ] as [ p -o q ] is not well defined. Did you mean: if [ "$CHECK_DIRNAME_LEVEL" -eq 2 -o \ In /usr/bin/debrelease line 265: \( $CHECK_DIRNAME_LEVEL -eq 1 -a "$CHDIR" = yes \) ]; then ^------------------^ SC2086: Double quote to prevent globbing and word splitting. ^-- SC2166: Prefer [ p ] && [ q ] as [ p -a q ] is not well defined. Did you mean: \( "$CHECK_DIRNAME_LEVEL" -eq 1 -a "$CHDIR" = yes \) ]; then In /usr/bin/debrelease line 267: -e "\$pkg='$package'; \$re='$CHECK_DIRNAME_REGEX';" \ ^------^ SC2154: package is referenced but not assigned. In /usr/bin/debrelease line 272: echo >&2 <<EOF ^------------^ SC2217: Redirecting to 'echo', a command that doesn't read stdin. Did you want 'cat' instead? In /usr/bin/debrelease line 273: $progname: found debian/changelog for package $PACKAGE in the directory ^-------^ SC2154: progname is referenced but not assigned (did you mean 'PROGNAME'?). In /usr/bin/debrelease line 274: $pwd ^--^ SC2154: pwd is referenced but not assigned (for output from commands, use "$(pwd ...)" ). In /usr/bin/debrelease line 276: regex $check_dirname_regex. ^------------------^ SC2154: check_dirname_regex is referenced but not assigned (did you mean 'CHECK_DIRNAME_REGEX'?). In /usr/bin/debrelease line 297: sversion=`echo "$version" | perl -pe 's/^\d+://'` ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. ^------^ SC2154: version is referenced but not assigned (did you mean 'sversion'?). Did you mean: sversion=$(echo "$version" | perl -pe 's/^\d+://') In /usr/bin/debrelease line 302: mchanges=$(ls "$debsdir/${package}_${sversion}_*+*.changes" "$debsdir/${package}_${sversion}_multi.changes" 2>/dev/null | head -1) ^-- SC2012: Use find instead of ls to better handle non-alphanumeric filenames. In /usr/bin/debrelease line 305: if [ -z "$mchanges" -o ! -r "$mchanges" ]; then ^-- SC2166: Prefer [ p ] || [ q ] as [ p -o q ] is not well defined. In /usr/bin/debrelease line 325: read ans ^--^ SC2162: read without -r will mangle backslashes. ^-^ SC2034: ans appears unused. Verify use (or export if used externally). In /usr/bin/debrelease line 326: case ans in ^-^ SC2194: This word is constant. Did you forget the $ on a variable? For more information: https://www.shellcheck.net/wiki/SC1090 -- Can't follow non-constant source.... https://www.shellcheck.net/wiki/SC2034 -- DEFAULT_DEBRELEASE_DEBS_DIR appea... https://www.shellcheck.net/wiki/SC2046 -- Quote this to prevent word splitt...