In /usr/bin/dmtcp_rm_loclaunch line 28: CURRENT_TMPDIR=$DMTCP_TMPDIR/dmtcp-`whoami`@`hostname` ^------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^--------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: CURRENT_TMPDIR=$DMTCP_TMPDIR/dmtcp-$(whoami)@$(hostname) In /usr/bin/dmtcp_rm_loclaunch line 30: CURRENT_TMPDIR=$TMPDIR/dmtcp-`whoami`@`hostname` ^------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^--------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: CURRENT_TMPDIR=$TMPDIR/dmtcp-$(whoami)@$(hostname) In /usr/bin/dmtcp_rm_loclaunch line 32: CURRENT_TMPDIR=/tmp/dmtcp-`whoami`@`hostname` ^------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^--------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: CURRENT_TMPDIR=/tmp/dmtcp-$(whoami)@$(hostname) In /usr/bin/dmtcp_rm_loclaunch line 35: mkdir -p $CURRENT_TMPDIR ^-------------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: mkdir -p "$CURRENT_TMPDIR" In /usr/bin/dmtcp_rm_loclaunch line 42: echo "SLURM_SRUN_COMM_HOST=$SLURM_SRUN_COMM_HOST" > $SLURM_ENV_FILE ^-------------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: echo "SLURM_SRUN_COMM_HOST=$SLURM_SRUN_COMM_HOST" > "$SLURM_ENV_FILE" In /usr/bin/dmtcp_rm_loclaunch line 43: echo "SLURM_SRUN_COMM_PORT=$SLURM_SRUN_COMM_PORT" >> $SLURM_ENV_FILE ^-------------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: echo "SLURM_SRUN_COMM_PORT=$SLURM_SRUN_COMM_PORT" >> "$SLURM_ENV_FILE" In /usr/bin/dmtcp_rm_loclaunch line 44: echo "SLURMTMPDIR=$SLURMTMPDIR" >> $SLURM_ENV_FILE ^-------------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: echo "SLURMTMPDIR=$SLURMTMPDIR" >> "$SLURM_ENV_FILE" In /usr/bin/dmtcp_rm_loclaunch line 68: echo "`hostname`: nothing to launch \${DMTCP_REMLAUNCH_${NODE}_SLOTS} = ${LOCAL_SLOTS}" ^--------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: echo "$(hostname): nothing to launch \${DMTCP_REMLAUNCH_${NODE}_SLOTS} = ${LOCAL_SLOTS}" In /usr/bin/dmtcp_rm_loclaunch line 73: if [ "$SLURM_LOCALID" -ge $LOCAL_SLOTS ]; then ^----------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: if [ "$SLURM_LOCALID" -ge "$LOCAL_SLOTS" ]; then In /usr/bin/dmtcp_rm_loclaunch line 74: echo "`hostname`: Will not use SLURM_LOCALID=$SLURM_LOCALID for launch, max is $LOCAL_SLOTS" ^--------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: echo "$(hostname): Will not use SLURM_LOCALID=$SLURM_LOCALID for launch, max is $LOCAL_SLOTS" In /usr/bin/dmtcp_rm_loclaunch line 80: echo "`hostname`: Bad LOCAL_FILES variable DMTCP_REMLAUNCH_${NODE}_${SLURM_LOCALID}" ^--------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: echo "$(hostname): Bad LOCAL_FILES variable DMTCP_REMLAUNCH_${NODE}_${SLURM_LOCALID}" In /usr/bin/dmtcp_rm_loclaunch line 87: dmtcp_restart --join --coord-host $DMTCP_COORD_HOST \ ^---------------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: dmtcp_restart --join --coord-host "$DMTCP_COORD_HOST" \ In /usr/bin/dmtcp_rm_loclaunch line 88: --coord-port $DMTCP_COORD_PORT $LOCAL_FILES ^---------------^ SC2086: Double quote to prevent globbing and word splitting. ^----------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: --coord-port "$DMTCP_COORD_PORT" "$LOCAL_FILES" In /usr/bin/dmtcp_rm_loclaunch line 92: if [ -d ./LOGS ] && [ ${SLURM_LOCALID} -eq "0" ]; then ^--------------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: if [ -d ./LOGS ] && [ "${SLURM_LOCALID}" -eq "0" ]; then In /usr/bin/dmtcp_rm_loclaunch line 99: cp -R $TDIR/dmtcp* ./LOGS/ ^---^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: cp -R "$TDIR"/dmtcp* ./LOGS/ In /usr/bin/dmtcp_rm_loclaunch line 100: rm -R $TDIR/dmtcp* ^---^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: rm -R "$TDIR"/dmtcp* In /usr/bin/dmtcp_rm_loclaunch line 106: cd $PBS_O_WORKDIR ^---------------^ SC2164: Use 'cd ... || exit' or 'cd ... || return' in case cd fails. ^------------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: cd "$PBS_O_WORKDIR" || exit In /usr/bin/dmtcp_rm_loclaunch line 116: echo "$0: Not enough parameters: $@. Exit." ^-- SC2145: Argument mixes string and array. Use * or separate argument. In /usr/bin/dmtcp_rm_loclaunch line 133: echo "`hostname`: nothing to launch \${DMTCP_REMLAUNCH_${NODE}_SLOTS} = ${LOCAL_SLOTS}" ^--------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: echo "$(hostname): nothing to launch \${DMTCP_REMLAUNCH_${NODE}_SLOTS} = ${LOCAL_SLOTS}" In /usr/bin/dmtcp_rm_loclaunch line 138: MAX_SLOT=`expr "$LOCAL_SLOTS" - 1` ^-----------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^--^ SC2003: expr is antiquated. Consider rewriting this using $((..)), ${} or [[ ]]. Did you mean: MAX_SLOT=$(expr "$LOCAL_SLOTS" - 1) In /usr/bin/dmtcp_rm_loclaunch line 140: for slot in `seq 0 $MAX_SLOT`; do ^---------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^-------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: for slot in $(seq 0 "$MAX_SLOT"); do In /usr/bin/dmtcp_rm_loclaunch line 147: echo "`hostname`: Bad LOCAL_FILES variable DMTCP_REMLAUNCH_${NODE}_${SLURM_LOCALID}" ^--------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: echo "$(hostname): Bad LOCAL_FILES variable DMTCP_REMLAUNCH_${NODE}_${SLURM_LOCALID}" In /usr/bin/dmtcp_rm_loclaunch line 153: dmtcp_restart --join --coord-host $DMTCP_COORD_HOST \ ^---------------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: dmtcp_restart --join --coord-host "$DMTCP_COORD_HOST" \ In /usr/bin/dmtcp_rm_loclaunch line 154: --coord-port $DMTCP_COORD_PORT $LOCAL_FILES ^---------------^ SC2086: Double quote to prevent globbing and word splitting. ^----------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: --coord-port "$DMTCP_COORD_PORT" "$LOCAL_FILES" For more information: https://www.shellcheck.net/wiki/SC2145 -- Argument mixes string and array. ... https://www.shellcheck.net/wiki/SC2164 -- Use 'cd ... || exit' or 'cd ... |... https://www.shellcheck.net/wiki/SC2086 -- Double quote to prevent globbing ...