In /usr/bin/lcf line 21: progname="$(basename $0)" ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: progname="$(basename "$0")" In /usr/bin/lcf line 90: if [ $? != 0 ] ; then ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?. In /usr/bin/lcf line 131: . /etc/ucf.conf ^-----------^ SC1091: Not following: /etc/ucf.conf was not specified as input (see shellcheck -x). In /usr/bin/lcf line 135: if [ "X$source_dir" = "X" ]; then ^---------^ SC2154: source_dir is referenced but not assigned. In /usr/bin/lcf line 140: elif [ ! "x$conf_source_dir" = "x" ]; then ^--------------^ SC2154: conf_source_dir is referenced but not assigned. In /usr/bin/lcf line 150: if [ "X$dest_file" = "X" ]; then ^--------^ SC2154: dest_file is referenced but not assigned. In /usr/bin/lcf line 155: old_mdsum_dir="$source_dir/$(basename ${new_file}).md5sum.d"; ^---------^ SC2154: new_file is referenced but not assigned. ^---------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: old_mdsum_dir="$source_dir/$(basename "${new_file}").md5sum.d"; In /usr/bin/lcf line 156: old_mdsum_file="$source_dir/$(basename ${new_file}).md5sum"; ^---------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: old_mdsum_file="$source_dir/$(basename "${new_file}").md5sum"; In /usr/bin/lcf line 159: if [ -e "$statedir/hashfile" -a ! -r "$statedir/hashfile" ]; then ^-- SC2166: Prefer [ p ] && [ q ] as [ p -a q ] is not well defined. In /usr/bin/lcf line 215: if [ -d "$old_mdsum_dir" -o -f "$old_mdsum_file" ]; then ^-- SC2166: Prefer [ p ] || [ q ] as [ p -o q ] is not well defined. In /usr/bin/lcf line 217: for file in ${old_mdsum_dir}/*; do ^--------------^ SC2231: Quote expansions in this for loop glob to prevent wordsplitting, e.g. "$dir"/*.txt . In /usr/bin/lcf line 218: oldsum="$(awk '{print $1}' $file)"; ^---^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: oldsum="$(awk '{print $1}' "$file")"; In /usr/bin/lcf line 219: if [ "$oldsum" = "$destsum" ]; then ^------^ SC2154: destsum is referenced but not assigned. In /usr/bin/lcf line 221: echo "$(awk '{print $2}' $file)"; ^-------------------------^ SC2005: Useless echo? Instead of 'echo $(cmd)', just use 'cmd'. ^---^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: echo "$(awk '{print $2}' "$file")"; In /usr/bin/lcf line 229: echo $(grep "^${destsum}" "$old_mdsum_file" | awk '{print $2}') ^-- SC2046: Quote this to prevent word splitting. ^-- SC2005: Useless echo? Instead of 'echo $(cmd)', just use 'cmd'. For more information: https://www.shellcheck.net/wiki/SC2046 -- Quote this to prevent word splitt... https://www.shellcheck.net/wiki/SC2154 -- conf_source_dir is referenced but... https://www.shellcheck.net/wiki/SC2166 -- Prefer [ p ] && [ q ] as [ p -a q...