In /usr/bin/fsbench line 10: if [ ! $? -eq 0 ]; then ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?. In /usr/bin/fsbench line 32: if ! expr $num + 0 >/dev/null 2>&1; then ^--^ SC2003: expr is antiquated. Consider rewriting this using $((..)), ${} or [[ ]]. ^--^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: if ! expr "$num" + 0 >/dev/null 2>&1; then In /usr/bin/fsbench line 39: freemb=`df -m . | tail -1 | awk '{print $4}'` ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: freemb=$(df -m . | tail -1 | awk '{print $4}') In /usr/bin/fsbench line 40: if [ $num -gt $freemb ]; then ^--^ SC2086: Double quote to prevent globbing and word splitting. ^-----^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: if [ "$num" -gt "$freemb" ]; then In /usr/bin/fsbench line 41: echo $num MB diskspace needed, but only $freemb MB found. ^--^ SC2086: Double quote to prevent globbing and word splitting. ^-----^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: echo "$num" MB diskspace needed, but only "$freemb" MB found. In /usr/bin/fsbench line 46: for a in `seq -f "%04.0f" 1 $num`; do ^----------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^--^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: for a in $(seq -f "%04.0f" 1 "$num"); do In /usr/bin/fsbench line 47: totalmb=`echo ${totalmb}+${a}|bc` ^-----------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^--^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: totalmb=$(echo ${totalmb}+"${a}"|bc) In /usr/bin/fsbench line 50: if [ `uname` = Linux ]; then ^-----^ SC2046: Quote this to prevent word splitting. ^-----^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: if [ $(uname) = Linux ]; then In /usr/bin/fsbench line 51: if [ 0 -eq `id -u` ]; then ^-----^ SC2046: Quote this to prevent word splitting. ^-----^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: if [ 0 -eq $(id -u) ]; then In /usr/bin/fsbench line 52: echo "Filesystem:" `file -bLs $(df -h . | tail -1 | awk '{print $1}')` ^-- SC2046: Quote this to prevent word splitting. ^-- SC2006: Use $(...) notation instead of legacy backticked `...`. ^-- SC2046: Quote this to prevent word splitting. Did you mean: echo "Filesystem:" $(file -bLs $(df -h . | tail -1 | awk '{print $1}')) In /usr/bin/fsbench line 57: start=`date +%s.%N` ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: start=$(date +%s.%N) In /usr/bin/fsbench line 63: if [ ! $? -eq 0 ]; then ^-- SC2181: Check exit code directly with e.g. 'if mycmd;', not indirectly with $?. In /usr/bin/fsbench line 68: for a in `seq -f "%04.0f" 1 $num | shuf`; do ^-----------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^--^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: for a in $(seq -f "%04.0f" 1 "$num" | shuf); do In /usr/bin/fsbench line 69: percent=`echo ${mb}*100/${totalmb}|bc` ^----------------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^--------^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: percent=$(echo ${mb}*100/"${totalmb}"|bc) In /usr/bin/fsbench line 70: mb=`echo ${mb}+${a}|bc` ^------------------^ SC2006: Use $(...) notation instead of legacy backticked `...`. ^--^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: mb=$(echo ${mb}+"${a}"|bc) In /usr/bin/fsbench line 72: dd if=/dev/zero of=_fsbench/$a bs=${a}M count=1 2>/dev/null ^-- SC2086: Double quote to prevent globbing and word splitting. ^--^ SC2086: Double quote to prevent globbing and word splitting. Did you mean: dd if=/dev/zero of=_fsbench/"$a" bs="${a}"M count=1 2>/dev/null In /usr/bin/fsbench line 73: rm _fsbench/$a ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: rm _fsbench/"$a" In /usr/bin/fsbench line 74: mkdir _fsbench/$a ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: mkdir _fsbench/"$a" In /usr/bin/fsbench line 81: end=`date +%s.%N` ^-----------^ SC2006: Use $(...) notation instead of legacy backticked `...`. Did you mean: end=$(date +%s.%N) In /usr/bin/fsbench line 86: t=`echo $end - $start | bc` ^-----------------------^ 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: t=$(echo "$end" - "$start" | bc) In /usr/bin/fsbench line 87: ts=`echo ${totalmb}/${t}|bc` ^-----------------------^ 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: ts=$(echo "${totalmb}"/"${t}"|bc) In /usr/bin/fsbench line 88: echo $t ^-- SC2086: Double quote to prevent globbing and word splitting. Did you mean: echo "$t" For more information: https://www.shellcheck.net/wiki/SC2046 -- Quote this to prevent word splitt... https://www.shellcheck.net/wiki/SC2086 -- Double quote to prevent globbing ... https://www.shellcheck.net/wiki/SC2003 -- expr is antiquated. Consider rewr...