In /usr/bin/scr_postrun line 14:
  if [ $SCR_DEBUG -gt 0 ] ; then
       ^--------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
  if [ "$SCR_DEBUG" -gt 0 ] ; then


In /usr/bin/scr_postrun line 21:
start_time=`date`
           ^----^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
start_time=$(date)


In /usr/bin/scr_postrun line 22:
start_secs=`date +%s`
           ^--------^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
start_secs=$(date +%s)


In /usr/bin/scr_postrun line 32:
  for i in ${ATTEMPTED[@]} ; do
           ^-------------^ SC2068: Double quote array expansions to avoid re-splitting elements.


In /usr/bin/scr_postrun line 43:
  for i in ${SUCCEEDED[@]} ; do
           ^-------------^ SC2068: Double quote array expansions to avoid re-splitting elements.


In /usr/bin/scr_postrun line 53:
pardir=`$bindir/scr_prefix`
       ^------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
pardir=$($bindir/scr_prefix)


In /usr/bin/scr_postrun line 72:
  nodelist_env=`$bindir/scr_env --nodes`
               ^-----------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
  nodelist_env=$($bindir/scr_env --nodes)


In /usr/bin/scr_postrun line 73:
  if [ $? -eq 0 ] ; then
       ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/scr_postrun line 85:
DOWNNODES=`$bindir/scr_list_down_nodes $SCR_NODELIST`
          ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
                                       ^-----------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
DOWNNODES=$($bindir/scr_list_down_nodes "$SCR_NODELIST")


In /usr/bin/scr_postrun line 87:
  UPNODES=`$bindir/scr_glob_hosts --minus $SCR_NODELIST:$DOWNNODES`
          ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
                                          ^-----------^ SC2086: Double quote to prevent globbing and word splitting.
                                                        ^--------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
  UPNODES=$($bindir/scr_glob_hosts --minus "$SCR_NODELIST":"$DOWNNODES")


In /usr/bin/scr_postrun line 95:
  cntldir=`$bindir/scr_list_dir control`;
          ^----------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
  cntldir=$($bindir/scr_list_dir control);


In /usr/bin/scr_postrun line 116:
  output_list=`$bindir/scr_flush_file --dir $pardir --list-output`
              ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
                                            ^-----^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
  output_list=$($bindir/scr_flush_file --dir "$pardir" --list-output)


In /usr/bin/scr_postrun line 117:
  if [ $? -eq 0 ] ; then
       ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/scr_postrun line 120:
      $bindir/scr_flush_file --dir $pardir --need-flush $d
                                   ^-----^ SC2086: Double quote to prevent globbing and word splitting.
                                                        ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
      $bindir/scr_flush_file --dir "$pardir" --need-flush "$d"


In /usr/bin/scr_postrun line 121:
      if [ $? -eq 0 ] ; then
           ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/scr_postrun line 128:
        dsetname=`$bindir/scr_flush_file --dir $pardir --name $d`
                 ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
                                               ^-----^ SC2086: Double quote to prevent globbing and word splitting.
                                                              ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
        dsetname=$($bindir/scr_flush_file --dir "$pardir" --name "$d")


In /usr/bin/scr_postrun line 129:
        if [ $? -eq 0 ] ; then
             ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/scr_postrun line 132:
          mkdir -p $datadir
                   ^------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
          mkdir -p "$datadir"


In /usr/bin/scr_postrun line 136:
          echo $prog: $bindir/scr_scavenge $verbose --id $d --from $cntldir --to $pardir --jobset $SCR_NODELIST --up $UPNODES
                                                         ^-- SC2086: Double quote to prevent globbing and word splitting.
                                                                   ^------^ SC2086: Double quote to prevent globbing and word splitting.
                                                                                 ^-----^ SC2086: Double quote to prevent globbing and word splitting.
                                                                                                  ^-----------^ SC2086: Double quote to prevent globbing and word splitting.
                                                                                                                     ^------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
          echo $prog: $bindir/scr_scavenge $verbose --id "$d" --from "$cntldir" --to "$pardir" --jobset "$SCR_NODELIST" --up "$UPNODES"


In /usr/bin/scr_postrun line 137:
          $bindir/scr_scavenge $verbose --id $d --from $cntldir --to $pardir --jobset $SCR_NODELIST --up $UPNODES
                                             ^-- SC2086: Double quote to prevent globbing and word splitting.
                                                       ^------^ SC2086: Double quote to prevent globbing and word splitting.
                                                                     ^-----^ SC2086: Double quote to prevent globbing and word splitting.
                                                                                      ^-----------^ SC2086: Double quote to prevent globbing and word splitting.
                                                                                                         ^------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
          $bindir/scr_scavenge $verbose --id "$d" --from "$cntldir" --to "$pardir" --jobset "$SCR_NODELIST" --up "$UPNODES"


In /usr/bin/scr_postrun line 145:
          $bindir/scr_index --prefix $pardir --add $d
                                     ^-----^ SC2086: Double quote to prevent globbing and word splitting.
                                                   ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
          $bindir/scr_index --prefix "$pardir" --add "$d"


In /usr/bin/scr_postrun line 146:
          if [ $? -ne 0 ] ; then
               ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/scr_postrun line 172:
  ckpt_list=`$bindir/scr_flush_file --dir $pardir --list-ckpt --before $failed_dataset`
            ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
                                          ^-----^ SC2086: Double quote to prevent globbing and word splitting.
                                                                       ^-------------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
  ckpt_list=$($bindir/scr_flush_file --dir "$pardir" --list-ckpt --before "$failed_dataset")


In /usr/bin/scr_postrun line 173:
  if [ $? -eq 0 ] ; then
       ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/scr_postrun line 175:
      in_attempted_list $d
                        ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
      in_attempted_list "$d"


In /usr/bin/scr_postrun line 176:
      if [ $? -eq 0 ] ; then
           ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/scr_postrun line 177:
        in_succeeded_list $d
                          ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
        in_succeeded_list "$d"


In /usr/bin/scr_postrun line 178:
        if [ $? -eq 0 ] ; then
             ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/scr_postrun line 180:
          dsetname=`$bindir/scr_flush_file --dir $pardir --name $d`
                   ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
                                                 ^-----^ SC2086: Double quote to prevent globbing and word splitting.
                                                                ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
          dsetname=$($bindir/scr_flush_file --dir "$pardir" --name "$d")


In /usr/bin/scr_postrun line 181:
          if [ $? -eq 0 ] ; then
               ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/scr_postrun line 184:
            $bindir/scr_index --prefix $pardir --current $dsetname
                                       ^-----^ SC2086: Double quote to prevent globbing and word splitting.
                                                         ^-------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
            $bindir/scr_index --prefix "$pardir" --current "$dsetname"


In /usr/bin/scr_postrun line 197:
      $bindir/scr_flush_file --dir $pardir --need-flush $d
                                   ^-----^ SC2086: Double quote to prevent globbing and word splitting.
                                                        ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
      $bindir/scr_flush_file --dir "$pardir" --need-flush "$d"


In /usr/bin/scr_postrun line 198:
      if [ $? -eq 0 ] ; then
           ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/scr_postrun line 202:
        dsetname=`$bindir/scr_flush_file --dir $pardir --name $d`
                 ^-- SC2006: Use $(...) notation instead of legacy backticked `...`.
                                               ^-----^ SC2086: Double quote to prevent globbing and word splitting.
                                                              ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
        dsetname=$($bindir/scr_flush_file --dir "$pardir" --name "$d")


In /usr/bin/scr_postrun line 203:
        if [ $? -eq 0 ] ; then
             ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/scr_postrun line 206:
          mkdir -p $datadir
                   ^------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
          mkdir -p "$datadir"


In /usr/bin/scr_postrun line 210:
          echo $prog: $bindir/scr_scavenge $verbose --id $d --from $cntldir --to $pardir --jobset $SCR_NODELIST --up $UPNODES
                                                         ^-- SC2086: Double quote to prevent globbing and word splitting.
                                                                   ^------^ SC2086: Double quote to prevent globbing and word splitting.
                                                                                 ^-----^ SC2086: Double quote to prevent globbing and word splitting.
                                                                                                  ^-----------^ SC2086: Double quote to prevent globbing and word splitting.
                                                                                                                     ^------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
          echo $prog: $bindir/scr_scavenge $verbose --id "$d" --from "$cntldir" --to "$pardir" --jobset "$SCR_NODELIST" --up "$UPNODES"


In /usr/bin/scr_postrun line 211:
          $bindir/scr_scavenge $verbose --id $d --from $cntldir --to $pardir --jobset $SCR_NODELIST --up $UPNODES
                                             ^-- SC2086: Double quote to prevent globbing and word splitting.
                                                       ^------^ SC2086: Double quote to prevent globbing and word splitting.
                                                                     ^-----^ SC2086: Double quote to prevent globbing and word splitting.
                                                                                      ^-----------^ SC2086: Double quote to prevent globbing and word splitting.
                                                                                                         ^------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
          $bindir/scr_scavenge $verbose --id "$d" --from "$cntldir" --to "$pardir" --jobset "$SCR_NODELIST" --up "$UPNODES"


In /usr/bin/scr_postrun line 219:
          $bindir/scr_index --prefix $pardir --add $d
                                     ^-----^ SC2086: Double quote to prevent globbing and word splitting.
                                                   ^-- SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
          $bindir/scr_index --prefix "$pardir" --add "$d"


In /usr/bin/scr_postrun line 220:
          if [ $? -ne 0 ] ; then
               ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.


In /usr/bin/scr_postrun line 229:
            $bindir/scr_index --prefix $pardir --current $dsetname
                                       ^-----^ SC2086: Double quote to prevent globbing and word splitting.
                                                         ^-------^ SC2086: Double quote to prevent globbing and word splitting.

Did you mean: 
            $bindir/scr_index --prefix "$pardir" --current "$dsetname"


In /usr/bin/scr_postrun line 252:
end_time=`date`
         ^----^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
end_time=$(date)


In /usr/bin/scr_postrun line 253:
end_secs=`date +%s`
         ^--------^ SC2006: Use $(...) notation instead of legacy backticked `...`.

Did you mean: 
end_secs=$(date +%s)


In /usr/bin/scr_postrun line 254:
run_secs=$(($end_secs - $start_secs))
            ^-------^ SC2004: $/${} is unnecessary on arithmetic variables.
                        ^---------^ SC2004: $/${} is unnecessary on arithmetic variables.

For more information:
  https://www.shellcheck.net/wiki/SC2068 -- Double quote array expansions to ...
  https://www.shellcheck.net/wiki/SC2086 -- Double quote to prevent globbing ...
  https://www.shellcheck.net/wiki/SC2004 -- $/${} is unnecessary on arithmeti...